PHP显示前天昨天今天几天前

熊海
熊海

以前经常在一些博客,或者微博上看到显示几分钟前、几小时前、前天、昨天、今天、几天前、等功能,比直接显示日期时间感觉要好一些,经过一翻琢磨,其实也很容易,转换成时间戳,然后计算两个时间的时间差,再换算就可以了。

以下代码可以实现上述的功能外,还根据时间判断了显示方式,7天内,超过3天的则会显示显示几天前,而超过7天则会显示年月日 小时分钟。

<?php

//时间转换函数

function tranTime($time) { 

    $rtime = date("m-d H:i",$time); 

 $rtime2 = date("Y-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 = '昨天 '.$htime;  

        else 

           $str = '前天 '.$htime;  

    }

 elseif ($time < 60 * 60 * 24 * 7) {  

        $d = floor($time/(60*60*24));  

           $str = $d.' 天前 '.$htime;  

  } elseif ($time < 60 * 60 * 24 * 30) {  

        $str = $rtime;  

  }

    else {  

        $str = $rtime2;   

    }  

    return $str;  

}
$times=strtotime($w_time);//$w_time 存储的时间字段

echo tranTime($times);
?>

 

支付宝打赏支付宝 微信
微信扫一扫
0 条评论

评论:

发送