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

2024年05月10日 dedecms 后台 会员 消费 记录 人性化 时间 显示 懒猪技术

EDECMS的后台会员消费记录存在BUG,在消费时间后边跟随的人性化时间不准确,一年前的单子也显示几天前。需要进行修改。

1、打开include/helpers/time.helper.php,找到

01function FloorTime($seconds)

02 {

03 $times = '';

04 $days = floor(($seconds/86400)%30);

05 $hours = floor(($seconds/3600)%24);

06 $minutes = floor(($seconds/60)%60);

07 $seconds = floor($seconds%60);

08 if($seconds >= 1) $times .= $seconds.'秒';

09 if($minutes >= 1) $times = $minutes.'分钟 '.$times;

10 if($hours >= 1) $times = $hours.'小时 '.$times;

11 if($days >= 1) $times = $days.'天';

12 if($days > 30) return false;

13 $times .= '前';

14 return str_replace(" ", '', $times);

15 }

替换为以下代码即可:

01function FloorTime($date) {

02$str = '';

03$timer = $date;

04$diff = $_SERVER['REQUEST_TIME'] - $timer;

05$day = floor($diff / 86400);

06$free = $diff % 86400;

07if($day > 0) {

08return $day."天前";

09}else{

10if($free>0){

11$hour = floor($free / 3600);

12$free = $free % 3600;

13if($hour>0){

14return $hour."小时前";

15}else{

16if($free>0){

17$min = floor($free / 60);

18$free = $free % 60;

19if($min>0){

20return $min."分钟前";

21}else{

22if($free>0){

23return $free."秒前";

24}else{

25return '刚刚';

26}

27}

28}else{

29return '刚刚';

30}

31}

32}else{

33return '刚刚';

34}

35}

36}

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>)

更改完毕。


本文链接:http://so.lmcjl.com/news/4211/

展开阅读全文
相关内容