Home  >  Article  >  php教程  >  时间戳友好化格式化函数

时间戳友好化格式化函数

PHP中文网
PHP中文网Original
2016-05-25 16:58:541368browse

在一些微博系统中经常要将时间于现在时间相比显示为多久以前发布的,如显示为:刚刚、5秒前、5小时前、5天前..

/**
 *
 * Description 友好显示时间
 * @param int $time 要格式化的时间戳 默认为当前时间
 * @return string $text 格式化后的时间戳
 * @author yijianqing
 */
 function mdate($time = NULL) {
    $text = '';
    $time = $time === NULL || $time > time() ? time() : intval($time);
    $t = time() - $time; //时间差 (秒)
    if ($t == 0)
        $text = '刚刚';
    elseif ($t < 60)
        $text = $t . &#39;秒前&#39;; // 一分钟内
    elseif ($t < 60 * 60)
        $text = floor($t / 60) . &#39;分钟前&#39;; //一小时内
    elseif ($t < 60 * 60 * 24)
        $text = floor($t / (60 * 60)) . &#39;小时前&#39;; // 一天内
    elseif ($t < 60 * 60 * 24 * 3)
        $text = floor($time/(60*60*24)) ==1 ?&#39;昨天 &#39; . date(&#39;H:i&#39;, $time) : &#39;前天 &#39; . date(&#39;H:i&#39;, $time) ; //昨天和前天
    elseif ($t < 60 * 60 * 24 * 30)
        $text = date(&#39;m月d日 H:i&#39;, $time); //一个月内
    elseif ($t < 60 * 60 * 24 * 365)
        $text = date(&#39;m月d日&#39;, $time); //一年内
    else
        $text = date(&#39;Y年m月d日&#39;, $time); //一年以前
    return $text;
 }

                   


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn