在很多场合为了显示出信息的及时性,一般会将时间显示成“刚刚”,“5分钟前”,“3小时前”等,而不是直接将时间打印出来。比如微博,SNS类应用就最长用到这个功能。而一般存储在数据库中的时间格式为 Unix时间戳,所以这里记录一个将 Unix时间戳 转化为时间轴显示的PHP函数。 函数比较简单,直接看代码就很好懂了。 <div class="codetitle"><a style="CURSOR: pointer" data="16004" class="copybut" id="copybut16004" onclick="doCopy('code16004')"> 代码如下:<div class="codebody" id="code16004"> <?php date_default_timezone_set('PRC'); $date = "1351836000"; echo tranTime($date); function transfer_time($time) { $rtime = date("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/(6060)); $str = $h.'小时前 '.$htime; } elseif ($time < 60 60 24 3) { $d = floor($time/(6060*24)); if($d==1) $str = '昨天 '.$rtime; else $str = '前天 '.$rtime; } else { $str = $rtime; } return $str; } ?>
注意函数transfer_time()中的参数$time必须为Unix时间戳,如果不是请先用strtotime()将其转换成Unix时间戳
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|