php如何计算时间差,PHP时间比较和时间差如何计算

1.<?php

2. $zero1=date(“y-m-d h:i:s”);

3. $zero2=”2010-11-29 21:07:00′;

4. echo “zero1的时间为:”.$zero1.”
”;

5. echo “zero2的时间为:”.$zero2.”
”;

6. if(strtotime($zero1)

7. echo “zero1早于zero2′;

8. }else{

9. echo “zero2早于zero1′;

10. }

11. ?>

复制代码

上面是比较两个绝对时间的大小

复制代码

$zero1=strtotime (date("y-m-d h:i:s")); //当前时间 ,注意H 是24小时 h是12小时

$zero2=strtotime ("2014-1-21 00:00:00"); //过年时间,不能写2014-1-21 24:00:00 这样不对

$guonian=ceil(($zero2-$zero1)/86400); //60s*60min*24h

echo "离过年还有$guonian天!";

?>

复制代码

上面是倒计时小程序 实例代码

复制代码

//PHP计算两个时间差的方法

$startdate="2010-12-11 11:40:00";

$enddate="2012-12-12 11:45:09";

$date=floor((strtotime($enddate)-strtotime($startdate))/86400);

$hour=floor((strtotime($enddate)-strtotime($startdate))%86400/3600);

$minute=floor((strtotime($enddate)-strtotime($startdate))%86400/60);

$second=floor((strtotime($enddate)-strtotime($startdate))%86400%60);

echo $date."天
";

echo $hour."小时
";

echo $minute."分钟
";

echo $second."秒
";

?>

复制代码

/**

* 时间差计算

*

* @param Timestamp $time

* @return String Time Elapsed

* @author Shelley Shyan

* @copyright http://phparch.cn (Professional PHP Architecture)

*/

function time2Units ($time)

{

$year = floor($time / 60 / 60 / 24 / 365);

$time -= $year * 60 * 60 * 24 * 365;

$month = floor($time / 60 / 60 / 24 / 30);

$time -= $month * 60 * 60 * 24 * 30;

$week = floor($time / 60 / 60 / 24 / 7);

$time -= $week * 60 * 60 * 24 * 7;

$day = floor($time / 60 / 60 / 24);

$time -= $day * 60 * 60 * 24;

$hour = floor($time / 60 / 60);

$time -= $hour * 60 * 60;

$minute = floor($time / 60);

$time -= $minute * 60;

$second = $time;

$elapse = '';

$unitArr = array('年' =>'year', '个月'=>'month', '周'=>'week', '天'=>'day',

'小时'=>'hour', '分钟'=>'minute', '秒'=>'second'

);

foreach ( $unitArr as $cn => $u )

{

if ( $$u > 0 )

{

$elapse = $$u . $cn;

break;

}

}

return $elapse;

}

$past = 2052345678; // Some timestamp in the past

$now = time(); // Current timestamp

$diff = $now - $past;

echo '发表于' . time2Units($diff) . '前';

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值