我已经阅读了如何做到这一点,大多数人都提出了这个解决方案。我只想显示时间格式。
$starttime = "1899-12-30 06:52:47";
<?php echo date("h:i:s",strtotime($starttime)); ?>
出于某种原因,这将返回"16:00:00"
我做错了什么?
如评论中所述,您的日期在 unix 纪元之前。 DateTime()
允许您解决此问题。
$dt = new DateTime("1899-12-30 06:52:47");
echo $dt->format("h:i:s");
$starttime = "1899-12-30 06:52:47";
echo date("h:i:s",strtotime($starttime));
这段代码对我来说工作正常,并显示"06:52:47"。 这可能是因为 1899 年早于 Unix 时代(00:00:00 协调世界时 (UTC),1970 年 1 月 1 日星期四)