これを行う方法について読んだことがあり、ほとんどがこの解決策を思いつきました。時間形式を表示したいだけです。
$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 エポック (協定世界時 (UTC)、1970 年 1 月 1 日 00:00:00) より前であるためである可能性があります。