微博发表时间处理

在做微博项目时,有一个时间处理上的问题。

参考新浪微博,每当发表微博后,会有精确至秒的时间显示。

当碰到此类问题时,可以做如下处理:

function time ($time) {
        //$time为微博发表时间
	//当前时间
	$now = time();
	//今天零时零分零秒
	$today = strtotime(date('y-m-d', $now));
	//传递时间与当前时秒相差的秒数
	$diff = $now+1 - $time;
	$str = '';
	switch ($time) {
		case $diff < 60 :
			$str = $diff . '秒前';
			break;
		case $diff < 3600 :
			$str = floor($diff / 60) . '分钟前';
			break;
		case $diff < (3600 * 8) :
			$str = floor($diff / 3600) . '小时前';
			break;
		case $time > $today :
			$str = '今天  ' . date('H:i', $time);
			break;
		default : 
			$str = date('Y-m-d H:i:s', $time);
	}
	return $str;
}

将其封装为一个方法,每当需要处理时间时只需调用即可。

猜你喜欢

转载自blog.csdn.net/huihui940630/article/details/80189827