首页 > 解决方案 > Unix 纪元时间使用 PHP 错误地转换为人类可读

问题描述

1630440104是 Unix 纪元时间代码示例。

这个 PHP 代码

echo date('Y.m.d', '1630440104').' at '.date('H:m:s', '1630440104');

输出它2021.08.31 at 23:08:44是不正确的。

因为正确的输出应该是2021.08.31 at 23:01:44.

无论我在上面的 PHP 代码中插入什么时间代码,它都会返回 08 分钟而不是实际值。

我在哪里犯了错误?

标签: phpunixepoch

解决方案


错误是m在第二次date调用中使用。m是月,分钟是i

echo date('Y.m.d', 1630440104).' at '.date('H:i:s', 1630440104);

或者

echo date('Y.m.d \a\t H:i:s', 1630440104);

顺便说一句,第二个date参数接受一个int非类型错误会发生。stringdeclare(strict_types=1);

DateTime::format您可以在docs page下找到可用的格式。


推荐阅读