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 条评论