ホームページ  >  記事  >  バックエンド開発  >  PHPでミリ秒から日付形式m-d-Y H:i:s.uを取得する方法?

PHPでミリ秒から日付形式m-d-Y H:i:s.uを取得する方法?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-24 02:31:02627ブラウズ

How to Get Date Format m-d-Y H:i:s.u from Milliseconds in PHP?

ミリ秒から日付形式 m-d-Y H:i:s.u を取得する

ミリ秒単位で測定される UNIX タイムスタンプから、マイクロ秒で完全にフォーマットされた日付が必要だと想像してください。しかし、繰り返し 000000 になり、次のような結果になります。

07-28-2013 11:26:14.000000

解決策

解決策には、入力形式 U.u を使用する必要があります。

$now = DateTime::createFromFormat('U.u', microtime(true));
echo $now->format("m-d-Y H:i:s.u");

これは次のようになります。次の出力:

04-13-2015 05:56:22.082300

形式の理解

日付形式に関する PHP マニュアルから、次のようになります:

  • U: Unix エポックからの秒数
  • u: マイクロ秒

タイム ゾーンの考慮事項

通常、createFromFormat() は、指定されていない場合はローカル タイム ゾーンを使用します。ただし、microtime() は Unix エポックからの経過秒数を UTC で返すため、DateTime オブジェクトは暗黙的に UTC に初期化されます。これはサーバー内部のタスクには問題ありませんが、特定のタイム ゾーンの時刻を表示する必要がある場合は、オブジェクトの初期化後にそれに応じてタイム ゾーンを設定します。この目的には、setTimeZone() メソッドを使用します。

補足

  • MySQL に入力するには、次の形式を使用します: format("Y-m-d H:i:s.u")
  • 元の答えは、number_format() を行に追加することで改善され、正確な秒数で大文字と小文字が修正されました。

以上がPHPでミリ秒から日付形式m-d-Y H:i:s.uを取得する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。