尝试将日期时间显示为 ISO 8601 格式的字符串时,用户可能会遇到不正确的输出。具体来说,诸如“17 Oct 2008”之类的时间戳错误地显示为“1969-12-31T18:33:28-06:00”。
主要问题在于结构所提供代码的:
<?php echo date("c", $post[3]); ?>
这里,第二个参数date()函数是$post[3],它代表数据库时间戳字符串。但是,date() 函数需要 UNIX 时间戳作为其第二个参数。
要纠正此问题,您需要使用以下方法将数据库时间戳转换为 UNIX 时间戳strtotime() 函数。更正后的代码变为:
<?php echo date("c", strtotime($post[3])); ?>
通过合并此更改,将生成正确的 ISO 8601 格式的字符串,解决显示不正确的问题。
以上是为什么我的 PHP 代码显示不正确的 ISO 8601 日期?的详细内容。更多信息请关注PHP中文网其他相关文章!