UNIX时间戳与time()算时间差
目录
在mysql查询中我们经常会遇到UNIX时间戳的转换还有计算经过时间的问题,下面的我的一种解决方案
需要用到的函数
getdate(unix数字时间戳)
将时间戳数字转化为键值数组,使得我们可以轻易地分离想要进行判断的时间
time()
方便获取现在的时间
现假设从mysql中获取到时间戳为$result
$date_time_array = getdate($result);
$hour = $date_time_array['hours'];
$min = $date_time_array['minutes'];
$second = $date_time_array['seconds'];
$month = $date_time_array['mon'];
$day = $date_time_array['mday'];
$year = $date_time_array['year'];
$now_time_array = getdate(time());
if($year<$now_time_array['year'])
{
$diff = $now_time_array['year']-$year;
$timediff = $diff.'年前';
}
else if($month<$now_time_array['mon'])
{
$diff = $now_time_array['mon']-$month;
$timediff = $diff.'月前';
}
else if($day<$now_time_array['mday'])
{
$diff = $now_time_array['mday']-$day;
$timediff = $diff.'天前';
}
else if($hour<$now_time_array['hours'])
{
$diff = $now_time_array['hours']-$hour;
$timediff = $diff.'小时前';
}
else if($min<$now_time_array['minutes'])
{
$diff = $now_time_array['minutes']-$min;
$timediff = $diff.'分钟前';
}
else if($second<$now_time_array['seconds'])
{
$diff = $now_time_array['seconds']-$second;
$timediff = $diff.'秒前';
}
循环嵌套顺序判断年月日时分秒,找到第一个不同项相减,就能够计算出数据的距今时间