[转载]PHP 计算时间差
我們常常在網站上看到某篇文章發表于“3天前”,“5個月前”,“4年前”。下面這個函數就提供了計算這個時間差的功能。
<?php
/**
* 時間差計算
*
* @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) . '前';
?>
轉載于:https://www.cnblogs.com/tenking/archive/2009/11/09/2075304.html
總結
以上是生活随笔為你收集整理的[转载]PHP 计算时间差的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 系统启动
- 下一篇: Vista,Windows7中给IIS7