php把時間計算成幾分鐘前,幾小時前,幾天前的函數(shù)
<?php
//計算時間,規(guī)則如下,如果一小時內(nèi),顯示分鐘,如果大于1小時小于1天顯示小時,如果大于天且小于3天,顯示天數(shù),否則顯示日期時間
function time_aaa($s){
$m=0;$hr=0;$d=0;$td="now";
if($s>59) {
$m = (int)($s/60);
$s = $s-($m*60); // sec left over
$td = "$m 秒鐘前";
}
if($m>59){
$hr = (int)($m/60);
$m = $m-($hr*60); // min left over
$td = "$hr 小時"; if($hr>1) $td .= "";
if($m>0) $td .= ", $m 分鐘前";
}
if($hr>23){
$d = (int)($hr/24);
$hr = $hr-($d*24); // hr left over
$td = "$d 天"; if($d>1) $td .= "";
if($d<3){
if($hr>0) $td .= ", $hr 小時前"; if($hr>1) $td .= "";
}
}
return $td;
}
//調(diào)用方法
$now_time = date("Y-m-d H:i:s",time());
$timestamp1 = strtotime($now_time); //轉(zhuǎn)換成Unix 時間戳
$timestamp2 = $row['time'];//另一個變量,是Unix 時間戳
$rd = $timestamp1-$timestamp2;
// has to be a positive result
if($rd > 259200){
$td = date("Y-m-d H:i:s",$row['time']);
} else
{
$td = time_aaa($rd);
}
$td .= ($td=="now")? "":""; // in this example "ago"
echo $td; // 輸出
?>
信息科技 2011-11-01 20:09:24 通過 網(wǎng)頁 瀏覽(3344) 打印