在 PHP 中确定自日期时间戳以来经过的时间
在 PHP 中,获取自特定日期和时间戳以来经过的时间至关重要。此信息可用于以用户友好的格式显示经过的时间,例如“xx 分钟前”或“xx 天前”。
解决方案:
提供的代码举例说明了将日期和时间戳转换为相对时间的有效方法格式:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | <?php
$timestamp = strtotime ( '2010-04-28 17:25:43' );
function humanTiming( $timestamp ) {
$difference = time() - $timestamp ;
$tokens = array (
31536000 => 'year' ,
2592000 => 'month' ,
604800 => 'week' ,
86400 => 'day' ,
3600 => 'hour' ,
60 => 'minute' ,
1 => 'second'
);
foreach ( $tokens as $unit => $text ) {
if ( $difference < $unit ) continue ;
$units = floor ( $difference / $unit );
return $units . ' ' . $text . (( $units > 1) ? 's' : '' );
}
}
echo 'Event occurred ' . humanTiming( $timestamp ) . ' ago' ;
?>
|
登录后复制
说明:
- strtotime() 函数转换提供的日期和时间戳 ('2010-04-28 17:25 :43') 转换为 UNIX 时间戳。
- humanTiming() 函数计算当前时间和时间戳之间的差异。
- 该函数然后迭代时间单位数组(年、月、周等)及其相应的文本表示形式。
- 它检查时间差是否大于或等于当前单位,并返回适当的文本表示。
- 最后,将返回的字符串附加到输出中,表示相对时间自时间戳以来已过去。
以上是如何在 PHP 中计算并显示自日期时间戳记以来经过的时间?的详细内容。更多信息请关注PHP中文网其他相关文章!