首頁 >php教程 >php手册 >根据刚刚,1分钟前,1小时前,几天前显示文章发布日期

根据刚刚,1分钟前,1小时前,几天前显示文章发布日期

WBOY
WBOY原創
2016-06-13 10:17:392206瀏覽

一分钟之内发布的,显示“刚刚”
一小时之内发布的,显示“XX分钟前”
一个月之内发布的,显示“XX天前”
一个月外的直接显示日期。

代码收藏:

<span //</span><span 发表于几分钟前</span>
<span function</span> kele_time_since(<span $older_date</span>, <span $newer_date</span> = <span false</span><span )
{
    </span><span $chunks</span> = <span array</span><span (
        </span><span array</span>(60 * 60 * 24 * 365 , '年'),
        <span array</span>(60 * 60 * 24 * 30 , '月'),
        <span //</span><span array(60 * 60 * 24 * 7, '周'),</span>
        <span array</span>(60 * 60 * 24 , '天'),
        <span array</span>(60 * 60 , '小时'),
        <span array</span>(60 , '分钟'),<span 
    );
 
    </span><span $newer_date</span> = (<span $newer_date</span> == <span false</span>) ? (<span time</span>()+(60*60*get_settings("gmt_offset"))) : <span $newer_date</span><span ;
    </span><span $since</span> = <span $newer_date</span> - <span abs</span>(<span strtotime</span>(<span $older_date</span><span ));
 
    </span><span //</span><span 根据自己的需要调整时间段,下面的24则表示小时,根据需要调整吧</span>
    <span $chunks_count</span>=<span count</span>(<span $chunks</span><span );
    </span><span if</span>(<span $since</span> < 60 * 60 * 24*30<span ){
        </span><span for</span> (<span $i</span> = 0, <span $j</span> = <span $chunks_count</span>; <span $i</span> < <span $j</span>; <span $i</span>++<span ){
            </span><span $seconds</span> = <span $chunks</span>[<span $i</span>][0<span ];
            </span><span $name</span> = <span $chunks</span>[<span $i</span>][1<span ];
 
            </span><span if</span> ((<span $count</span> = <span floor</span>(<span $since</span> / <span $seconds</span>)) != 0<span ){
                </span><span break</span><span ;
            }
        }
        </span><span $out</span> = (<span $count</span> == 1) ? '1'.<span $name</span> : "<span $count</span>{<span $name</span>}"<span ;
        </span><span if</span>(0==<span $count</span><span ){
            </span><span return</span> "刚刚"<span ;
        }
        </span><span return</span> <span $out</span>."前"<span ;
    }</span><span else</span><span {
        the_time(get_option(</span>'date_format'<span ));
    }
}</span>

(原文:http://www.dayecn.com/tanteng/article/show-date/)

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn