我已经阅读了如何做到这一点,并且大多数人都提出了这个解决方案。我只想显示时间格式。
$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 日)