php获取时间间隔的方法总结,php显示论坛发帖时间间隔方法大全

PHP 投稿 10100 0 评论

php获取时间间隔的方法总结,php显示论坛发帖时间间隔方法大全

这篇关于php获取时间间隔的方法总结,php显示论坛发帖时间间隔方法大全的文章,觉得挺不错的,感兴趣的php开发者可以参考下,希望对大家在学习php的成长路上有所帮助!

有没有在论坛或者发表回复帖子的地方看到比较有意思的显示留言的方式,比如某某多少分钟前发表了什么什么,某某刚刚回复了帖子等。这是一种比较有趣的显示方式。下面本人也总结了两个个性的显示多少分钟前,多少小时前,多少天前回复或者发表了什么什么的方法。现分享代码如下:


<?php
//获取时间间隔
function transDate($timestamp){
	$curTime=time();
	$space=$curTime-$timestamp;
	if($space<60){
		$string='刚刚';
		return $string;
	}elseif($space<3600){
		$string=floor($space/60).'分钟前';
		return $string;
	}
	$curtimeArray=getdate($curTime);
	$timeArray=getDate($timestamp);
	if($curtimeArray['year']==$timeArray['year']){
		if($curtimeArray['yday']==$timeArray['yday']){
			$format='%H:%M';
			$string=strftime($format,$timestamp);
			return '今天';
		}elseif(($curtimeArray['yday']-1)==$timeArray['yday']){
			$format='%H:%M';
			$string=strftime($format,$timestamp);
			return '昨天';
		}else{
			$string=sprintf('%d月%d日',$timeArray['mon'],$timeArray['mday']);
			return $string;
		}
	}
	$string=sprintf('%d年%d月%d日',$timeArray['year'],$timeArray['mon'],$timeArray['mday']);  
	return $string;
}

另外一种获取时间间隔的方法:


<?php
//php 获取时间间隔
function time_tran($timeInt,$format='Y-m-d H:i:s'){
	$d=time()-$timeInt;
	if($d<0){
		return $timeInt;
	}else{
		if($d<60){
			return $d.'秒前';
		}else{
			if($d<3600){
				return floor($d/60).'分钟前';
			}else{
				if($d<86400){
					return floor($d/3600).'小时前';
				}else{
					if($d<259200){//3天内
						return floor($d/86400).'天前';
					}else{
						return date($format,$timeInt);
					}
				}
			}
		}
	}
}

以上函数的使用方法如下:


<?php
header('Content-type:text/html;charset=utf-8');
$d=time()-10;
echo transDate($d);//显示结果将为:刚刚
echo '<br />';
echo time_tran($d);//显示结果将为:10秒前

总结

以上就是关于php获取时间间隔的方法总结,php显示论坛发帖时间间隔方法大全全部内容,希望这篇文章能够帮你解决如相关的PHP问题,更多请关注PHP栏目的其它相关文章!

编程笔记 » php获取时间间隔的方法总结,php显示论坛发帖时间间隔方法大全

赞同 (50) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽