PHP CodeBase:将时间显示为"刚刚""n分钟/小时前"的方法详解
PHP CodeBase:将时间显示为"刚刚""n分钟/小时前"的方法详解
发布时间:2016-12-29 来源:查字典编辑
摘要:在很多场合为了显示出信息的及时性,一般会将时间显示成“刚刚”,“5分钟前”,“3小时前”等,而不是直接将时间打印出来。比如微博,SNS类应用...

在很多场合为了显示出信息的及时性,一般会将时间显示成“刚刚”,“5分钟前”,“3小时前”等,而不是直接将时间打印出来。比如微博,SNS类应用就最长用到这个功能。而一般存储在数据库中的时间格式为 Unix时间戳,所以这里记录一个将 Unix时间戳 转化为时间轴显示的PHP函数。

函数比较简单,直接看代码就很好懂了。

复制代码 代码如下:

<?php

date_default_timezone_set('PRC');

$date = "1351836000";

echo tranTime($date);

function transfer_time($time)

{

$rtime = date("m-d H:i",$time);

$htime = date("H:i",$time);

$time = time() - $time;

if ($time < 60)

{

$str = '刚刚';

}

elseif ($time < 60 * 60)

{

$min = floor($time/60);

$str = $min.'分钟前';

}

elseif ($time < 60 * 60 * 24)

{

$h = floor($time/(60*60));

$str = $h.'小时前 '.$htime;

}

elseif ($time < 60 * 60 * 24 * 3)

{

$d = floor($time/(60*60*24));

if($d==1)

$str = '昨天 '.$rtime;

else

$str = '前天 '.$rtime;

}

else

{

$str = $rtime;

}

return $str;

}

?>

注意函数transfer_time()中的参数$time必须为Unix时间戳,如果不是请先用strtotime()将其转换成Unix时间戳

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新php教程学习
热门php教程学习
编程开发子分类