时间戳友好化格式化函数

PHP中文网
リリース: 2016-05-25 16:58:54
オリジナル
1410 人が閲覧しました

在一些微博系统中经常要将时间于现在时间相比显示为多久以前发布的,如显示为:刚刚、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;
 }
ログイン後にコピー

                   


関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート