不少朋友想在頁面上顯示更人性化的時(shí)間,像微博等網(wǎng)站會(huì)有這種顯示方式,幾分鐘前、幾小時(shí)前、幾天前等等,更加人性化。武林網(wǎng)曾經(jīng)在前面《如何將織夢(mèng)發(fā)布的文章顯示成"今天、昨天、前天"》一文中介紹了織夢(mèng)CMS如何實(shí)現(xiàn)的,今天武林網(wǎng)小編再給大家介紹下帝國cms信息發(fā)布時(shí)間顯示為:幾秒前、幾分鐘前、幾天前的實(shí)現(xiàn)辦法。具體的操作是用php語言的使用方式,我們將代碼封裝成函數(shù)。實(shí)現(xiàn)代碼如下
function cmsdx_time($tm,$num) { if($num==1){ $tm = strtotime($tm); } $cur_tm = time(); $dif = $cur_tm-$tm; $pds = array('秒','分鐘','小時(shí)','天','周','個(gè)月','年'); $lngh = array(1,60,3600,86400,604800,2630880,31570560); for($v = sizeof($lngh)-1; ($v >= 0)&&(($no = $dif/$lngh[$v])<=1); $v--); if($v < 0) $v = 0; $_tm = $cur_tm-($dif%$lngh[$v]); $no = floor($no); $x=sprintf("%d%s",$no,$pds[$v]); return $x."前"; }
我們可以將函數(shù)存儲(chǔ)在userfun.php文件中,也可以單獨(dú)存在其他文件中引入。
接下來按照下面的方式引用函數(shù)即可。
列表模板調(diào)用:
'.cmsdx_time($r[newstime],0).'
內(nèi)容模板調(diào)用:
<?=cmsdx_time($navinfor[newstime],0)?>
以上的方式適用于帝國cms任何版本,當(dāng)然最新的7.2版本也完全適應(yīng)。但該方法有一個(gè)缺陷,那就是顯示的是刷新生成頁面時(shí)的相對(duì)時(shí)間,和我們常規(guī)見到的用js方式的時(shí)間顯示,可以做到時(shí)間的實(shí)時(shí)更新,有些不同,以后我們會(huì)陸續(xù)給大家介紹使用JS實(shí)現(xiàn)的方法,敬請(qǐng)期待。
以上就是帝國cms信息發(fā)布時(shí)間顯示為:幾秒前、幾分鐘前、幾天前的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)和解決疑問有所幫助,也希望大家多多支持武林網(wǎng)。新聞熱點(diǎn)
疑難解答
圖片精選