DEDECMS后台会员消费记录人性化时间显示不准的解决方法

在DEDECMS后台查看会员消费记录时发现,在消费时间后边跟随的人性化时间一点都不准确,一年前的单子只显示几天前。看着很不舒服,于是就修改一下。

1、打开include/helpers/time.helper.php,找到
function FloorTime($seconds)
    {
        $times = '';
        $days = floor(($seconds/86400)%30);
        $hours = floor(($seconds/3600)%24);
        $minutes = floor(($seconds/60)%60);
        $seconds = floor($seconds%60);
        if($seconds >= 1) $times .= $seconds.'秒';
        if($minutes >= 1) $times = $minutes.'分钟 '.$times;
        if($hours >= 1) $times = $hours.'小时 '.$times;
        if($days >= 1)  $times = $days.'天';
        if($days > 30) return false;
        $times .= '前';
        return str_replace(" ", '', $times);
    }

替换为以下代码即可:
function FloorTime($date) {
$str = '';
$timer = $date;
$diff = $_SERVER['REQUEST_TIME'] - $timer;
$day = floor($diff / 86400);
$free = $diff % 86400;
if($day > 0) {
return $day."天前";
}else{
if($free>0){
$hour = floor($free / 3600);
$free = $free % 3600;
if($hour>0){
return $hour."小时前";
}else{
if($free>0){
$min = floor($free / 60);
$free = $free % 60;
if($min>0){
return $min."分钟前";
}else{
if($free>0){
return $free."秒前";
}else{
return '刚刚';
}
}
}else{
return '刚刚';
}
}
}else{
return '刚刚';
}
}
}

2、打开后台管理目录下的templets/member_operations.htm,找到
(<font color="#FF0000">{dede:field.mtime function="floorTime(time()-@me,@me)"/}</font>)

替换为:
(<font color="#FF0000">{dede:field.mtime function="floorTime(@me)"/}</font>)

更改完毕。

评论

大侠名号:   验证码: 点击我更换图片  

修远兮

在这里记录每一点自己需要的知识

添加创始人微信,一起交流心得

推荐文章RECOMMEND