【问题标题】:PHP function that will turn a time stamp in the format yyyy-mm-dd hh:mm:ss into how old the time stamp isPHP 函数将格式为 yyyy-mm-dd hh:mm:ss 的时间戳转换为时间戳的年龄
【发布时间】:2011-06-20 05:52:54
【问题描述】:

基本上,我有一个类似于2010-12-15 16:14:06 的时间戳。如果时间戳是几秒前的,我希望它把它转换成“N 秒前”。如果时间戳是几分钟前的,我希望它把它转换成“N Minutes Old”。等等。有没有内置的 PHP 函数可以做到这一点?

【问题讨论】:

  • 简短回答:不。但您可以创建自己的 ;)
  • Google PHP relative time 你会发现很多脚本。

标签: php datetime date timestamp


【解决方案1】:

如果您运行的是 5.3,则可以使用 DateTime::diff 来执行此操作。它返回一个 DateInterval 对象,其中包含您想要的信息。

【讨论】:

    【解决方案2】:

    正如其他人所提到的,您需要有一些“起点”来衡量。有多种方法可以将时间戳(例如 2010-12-15 16:14:06)转换为 PHP 时间戳(距离 1970-01-01 00:00:00 的秒数)。如果那是您的“起点”,只需从当前时间或其他时间中减去它即可获得以秒为单位的差异。如果少于一定数量(例如 60),则将其设为“N 秒前”。如果更大,除以 60 得到分钟前,或 3600 得到小时前,等等)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-09
      • 2013-04-18
      • 1970-01-01
      • 2011-10-05
      • 2013-08-16
      相关资源
      最近更新 更多