我的知识记录

请问帝国cms实现发布时间为几小时前几天前等格式的方法

要在帝国CMS中实现时间显示为“几小时前”、“几天前”等格式,可以通过自定义函数来完成。以下是具体的步骤和代码示例。

步骤

  1. 编写自定义函数:将自定义函数写入 userfun.php 文件中。
  2. 调用函数:在列表模板和内容模板中调用该函数。

自定义函数

将以下代码放入 userfun.php 文件中:

<?php // 自定义时间显示函数 function user_time($tm, $num) {     if ($num == 1) {         $tm = strtotime($tm);     }     $cur_tm = time();     $dif = $cur_tm - $tm;          $pds = array('秒', '分钟', '小时', '天', '周', '个月', '年');     $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 . "前"; } ?>

调用函数

列表模板调用

在列表模板中调用该函数:

html   '.user_time($r[newstime], 0).'

这里的 $r[newstime] 是当前记录的时间字段。

内容模板调用

在内容模板中调用该函数:

html   <?=user_time($navinfor[newstime], 0)?>

这里的 $navinfor[newstime] 是当前记录的时间字段。

标签:帝国cms实现代码块高亮-帝国cms实现多国语言网站的方法-帝国cms视频教程-帝国cms7.5-帝国cms8.0-

更新时间:2025-04-11 00:44:35

上一篇:请问宝塔面板迁移磁盘数据至_home目录时遇到的问题及解决办法

下一篇:请问帝国CMS新闻正文图片自动加alt与title为文章标题