php - 日期和当前时间之间的时差?

标签 php jquery mysql codeigniter date

假设我有一个有趣的视频网站,向用户展示有趣的视频。在每个视频下方,我都希望根据视频的时间戳和当前时间声明“5 秒前”、“31 分钟前”、“昨天”、“2 天前”。

我的时间戳格式为:2011-10-17 07:08:00

我不太擅长日期,但我猜我需要以秒为单位找出两个日期/时间之间的差异,然后决定它是在 0sec 和 60sec 之间以秒为单位显示,还是在 60sec 和 60sec 之间显示以分钟为单位显示 3600 秒,或以小时显示 3600 秒和 3600x24 秒之间,以昨天显示 3600x24 秒和 3600x24x2 秒之间,依此类推......我相信我应该使用 strtotime() 但我似乎不能找到当前时间,因为我发现使用 new date() 的那些解决方案似乎不起作用!

我该怎么做?

顺便说一句,附带问题,当我将 2011-10-17, 7:08PM EDT 插入 MySQL 时间戳列时,它会转换为 2011-10-17 07:08: 00 这是上午。我怎样才能让它存储在正确的上午/下午?

最佳答案

您可以使用 DateTime php的功能。

$datetime1 = new DateTime('2011-10-17 07:08:00');
$datetime2 = new DateTime();
$interval = $datetime1->diff($datetime2);
echo $interval->format('%R%a days');

从这里开始,您可以根据实际时差使用一些 if 语句以另一种格式(秒、分钟、小时、月等)输出时差!输出格式为查找 here

关于php - 日期和当前时间之间的时差?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7807241/

相关文章:

php - 将类添加到 jquery 中的事件列表项

php - 如何将 boolean 字段添加到 MySQL?

javascript - 单击按钮时 JQuery UI 选项卡出现问题

MySQL:合并具有特定条件的表

php - Apache 的可暂停下载

php - 如何根据数据库表中的数据检查或选择单选按钮?

c# - 如何在mvc中获取复选框值?

javascript - 单击按钮时更改图片JQuery

php - PHP函数中的mysql函数

java - 为什么我这里有 NullPointerException?