Я прочитал о том, как это сделать, и большинство из них придумали это решение. Я просто хочу отобразить формат времени.
$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), четверг, 1 января 1970 года)