<?
/**
* 转换为unix时间戳
*/
function gettime($d) {
if(is_numeric($d))
return $d;
el {
if(! is_string($d)) return 0;
if(ereg(“:”,$d)) {
$buf = split(” +”,$d);
$year = split(“[-/]”,$buf[0]);
$hour = split(“:”,$buf[1]);
if(eregi(“pm”,$buf[2]))
$hour[0] += 12;
return mktime($hour[0],$hour[1],$hour[2],$year[1],$year[2],$year[0]);
}el {
$year = split(“[-/]”,$d);
return mktime(0,0,0,$year[1],$year[2],$year[0]);
}
}
}
/**
*
* dateadd(interval,number,date)
* 返回已添加指定时间间隔的日期。
* inetrval为表示要添加的时间间隔字符串表达式,例如分或天
* number为表示要添加的时间间隔的个数的数值表达式
* date表示日期
*
* interval(时间间隔字符串表达式)可以是以下任意值:
*yyyy year年
*q quarter季度
*m month月
*y day of year一年的数
*d day天
*w weekday一周的天数
*ww week of year周
*h hour小时
*n minute分
*s cond秒
*w、y和d的作用是完全一样的,即在目前的日期上加一天,q加3个月,ww加7天。
*/
function dateadd($interval, $number, $date) {
$date = gettime($date);
$date_time_array = getdate($date);
$hours = $date_time_array[“hours”];
$minutes = $date_time_array[“minutes”];
$conds = $date_time_array[“conds”];
$month = $date_time_array[“mon”];
$day = $date_time_array[“mday”];
$year = $date_time_array[“year”];
switch ($interval) {
ca “yyyy”: $year +=$number; break;
c抗日战争胜利的原因a “q”: $month +=($number*3); break;
ca “m”: $month +=$number; break;
ca “y”:
ca “d”:
ca “w”: $day+=$number; break;
ca “ww”: $day+=($number*7); break;
ca “h”: $hours+=$number; break;
ca “n”: $minutes+=$number; break;
ca “s”: $conds+=$number; break;
}
$timestamp = mktime($hours ,$minutes, $conds,$month ,洞房的由来$day, $year);
return $timestamp;
}
/**
* datediff(interval,date1,date2)
* 返回两个日期之间的时间间隔
* intervals(时间间隔字符串表达式)可以是以下任意值:
*w周
*d天
*h小时
*n国家交通安全日分钟
*s秒
*/
function datediff ($interval, $date1,$date2) {
// 得到两日期之间间隔的秒数
$timedifference = gettime($date2) – gettime($date1);
switch ($interval) {
ca “w”: $retval = bcdiv($timedifference ,604800); break;
ca “d”: $retv普通话小报al = bcdiv( $timedifference,86400); break;
ca “h”: $retval = bcdiv ($timedifference,3600); break;
ca “n”: $retval = bcdiv( $t四级口语自我介绍imedifference,60); break;
ca “s”: $retval = $timedifference; break;
}
return $retval;
}
?>
<?
// 测试例
$d1 = “2002-01-11”;
$d2 = date(“y-m-d”,dateadd(“d”,15,$d1));
echo $d1.”的”. datediff(“d”,$d1,$d2).”天后是$d2<br>”;
echo $d1.”的10天前是”.date(“y-m-d”,dateadd(“d”,-10,$d1)).”<br>”;
$d3 = date(“y/m/d h:i:s”);
echo “现在是”.$d3.”距离2002/2/12 12:59:59还有”.datediff(“s”,$d3,”2002/2/12 12:59:59″).”秒<br>”;
?>
本文发布于:2023-04-06 06:23:09,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/94299f5619fe1db66adbcb1194094d1f.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:php中的时间处理.doc
本文 PDF 下载地址:php中的时间处理.pdf
留言与评论(共有 0 条评论) |