首页 > 后端开发 > php教程 > 如何在 PHP 中计算并显示自日期时间戳记以来经过的时间?

如何在 PHP 中计算并显示自日期时间戳记以来经过的时间?

Mary-Kate Olsen
发布: 2024-12-19 07:47:10
原创
438 人浏览过

How Can I Calculate and Display the Time Elapsed Since a DateTime Stamp in PHP?

在 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中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板