PHP でミリ秒を日付に変換する
Unix エポックからの日付をミリ秒で表す数値文字列があります。これを「d-m-Y」形式に変換しようとしたところ、予想される出力と実際の出力の間に不一致が発生しました。この記事では、問題の原因を調査し、解決策を示します。
問題:
以下のコードは、予期されたものではなく「25-11-2008」を返します。 "02-12-2008":
<code class="php">$mil = 1227643821310; $seconds = $mil / 1000; echo date("d-m-Y", $seconds);</code>
解決策:
想定に反して、指定されたミリ秒値 ("1227643821310") は " 02-12-2008」ですが、 「2008年11月25日」これは、指定された入力の正しい変換です。
タイムスタンプは、1970 年 1 月 1 日 00:00:00 UTC からのミリ秒数を表します。これを 1000 で割ると秒に変換され、日付関数で計算されます。希望どおりにフォーマットしますformat.
結論:
問題は、ミリ秒値に関する誤った仮定にあります。ミリ秒を日付に変換する場合は、入力の精度を確認し、出力を期待値と比較します。
以上がPHP コードがミリ秒を間違った日付に変換するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。