如何在PHP中以人类可读的格式显示时差?

时间:2011-11-09 18:09:36

标签: php datetime

  

可能重复:
  PHP: Is there a function that converts a date string in a human readable format?

我有一个mysql表,其结构如下:

表:人 column1:name varchar(60) column2:得分int(11) column3:time datetime(60)

我有一个表单,可以使用php将数据插入此表:name,score和当前时间戳(NOW())。所有数据都按降序显示在“时间”列中。

我的困境是如何将'时间栏'中的时间与当前时间进行比较,并使用php以“5分钟前”或“2小时前”等人类可读格式进行比较。有什么功能可以直接在php中找到时差吗?或者我应该使用javascript?

2 个答案:

答案 0 :(得分:0)

我建议你看看Symfony DateHelper函数。您应该能够在Symfony框架之外使用这些功能,并且它们非常擅长显示日期范围和差异。

源代码:

http://trac.symfony-project.org/browser/branches/1.4/lib/helper/DateHelper.php

答案 1 :(得分:0)

您可以使用MySQL TIMEDIFF function来获取差异,然后编写一个简单的PHP函数来将其解析为相关的人类可读输出。

或者将两个日期时间值加载到PHP DateTime class中,然后使用diff()方法返回DateInterval class