当前位置: 编程技术>php
本页文章导读:
▪php文件结尾不写?>的好处有哪些 在php编程中,那个结尾的?>是否需要填写呢?
有的朋友说,不写结尾符可以防止注入,这个未有定论。
来看一个例子吧:
代码示例:
<?php
//这是b.php
include a.php
session_start();
?>
.........
▪php判断两个日期相差天数的实例代码 在分析网站日志时,经常需要取某段时间内的日期,以下的代码,可以判断两个日期相隔的天数、年数或月数。
代码如下:
<?php
/*
* function:计算两个日期相隔多少年,多少月,多少天
.........
▪php根据时间显示刚刚,几分钟前,几小时前的实现代码 判断信息发布时间距现在的时间差,转换显示成“刚刚”、“几分钟前”、“几小时前”、“昨天”、“前天”。
代码如下:
<?php
/**
* php时间转换
* edit by www.
*/
date_default_timezone_set('P.........
[1]php文件结尾不写?>的好处有哪些
来源: 互联网 发布时间: 2013-12-24
在php编程中,那个结尾的?>是否需要填写呢?
有的朋友说,不写结尾符可以防止注入,这个未有定论。
来看一个例子吧:
代码示例:
<?php
//这是b.php
include a.php
session_start();
?>
//这是b.php
include a.php
session_start();
?>
之前看到很多php文件中都不带php的结束符,今天看到看到一个demo,也刚好解释了不用?>结束符的好处。
以下是a.php截图:
注意第四行,第五行)
代码示例:
<?php
include 上图的文件.php
session_start();
?>
include 上图的文件.php
session_start();
?>
运行第二个文件,就会发现它会抛出警告说header already send out
主要是a.php在PHP结束符调用之后还有几行空白,那么PHP会认为它是HTML代码,这样是不是在调用session_start之前,就已经有header输出了嘛。
调用session_start之前,是不能有任何输出的,所以程序就会抛出警告。
如果使用?>,可能会在不经意间犯这个错误,当项目大,代码量大之后,要找到这样一个问题是很难的。
因此说,最好在PHP文件最后不要写?>,此为zend官方推荐的做法。
[2]php判断两个日期相差天数的实例代码
来源: 互联网 发布时间: 2013-12-24
在分析网站日志时,经常需要取某段时间内的日期,以下的代码,可以判断两个日期相隔的天数、年数或月数。
代码如下:
<?php
/*
* function:计算两个日期相隔多少年,多少月,多少天
* param string $date1[格式如:2013-7-5]
* param string $date2[格式如:2013-7-12]
* return array array('年','月','日');
* by www.
*/
function diffDate($date1,$date2){
if(strtotime($date1)>strtotime($date2)){
$tmp=$date2;
$date2=$date1;
$date1=$tmp;
}
list($Y1,$m1,$d1)=explode('-',$date1);
list($Y2,$m2,$d2)=explode('-',$date2);
$Y=$Y2-$Y1;
$m=$m2-$m1;
$d=$d2-$d1;
if($d<0){
$d+=(int)date('t',strtotime("-1 month $date2"));
$m--;
}
if($m<0){
$m+=12;
$y--;
}
return array($Y,$m,$d);
}
//调用示例
$date1 = "2013-7-5";
$date2 = "2013-7-16";
$y_date = diffDate($date1, $date2);
echo "相差天数为:" . $y_date;
?>
[3]php根据时间显示刚刚,几分钟前,几小时前的实现代码
来源: 互联网 发布时间: 2013-12-24
判断信息发布时间距现在的时间差,转换显示成“刚刚”、“几分钟前”、“几小时前”、“昨天”、“前天”。
代码如下:
<?php
/**
* php时间转换
* edit by www.
*/
date_default_timezone_set('PRC');
$date = "1351836000";
echo tranTime($date);
function tranTime($time)
{
$rtime = date("m-d H:i",$time);
$htime = date("H:i",$time);
$time = time() - $time;
if ($time < 60)
{
$str = '刚刚';
}
elseif ($time < 60 * 60)
{
$min = floor($time/60);
$str = $min.'分钟前';
}
elseif ($time < 60 * 60 * 24)
{
$h = floor($time/(60*60));
$str = $h.'小时前 '.$htime;
}
elseif ($time < 60 * 60 * 24 * 3)
{
$d = floor($time/(60*60*24));
if($d==1)
$str = '昨天 '.$rtime;
else
$str = '前天 '.$rtime;
}
else
{
$str = $rtime;
}
return $str;
}
?>最新技术文章: