現在の位置: ホーム> 最新記事一覧> 時間関数と組み合わせて現在の時間を取得する方法

時間関数と組み合わせて現在の時間を取得する方法

gitbox 2025-05-26

PHPプログラミングでは、調整されたユニバーサル時間(UTC)としても知られる現在のグリニッジ標準時間(GMT)を取得する必要がある場合があります。 PHPは、 GMDATE()関数とTime()関数の非常に便利な組み合わせを提供します。この要件を簡単に達成できます。

1。gmdate ()time()の紹介

  • gmdate()date()と同様ですが、現地時間ではなくGMT時間を返します。

  • Time() :UNIX ERA以降の現在のタイムスタンプを返します(1970年1月1日に00:00:00 GMT)。

これら2つの関数を組み合わせることにより、現在のGMT時間を取得できます。

2。コードの例

<?php
echo gmdate("Y-m-d H:i:s", time());
?>

このコードは、次の形式と同様のGMT時間文字列を出力します。

 2025-05-22 07:45:30

3。パラメーターの説明

  • 「YMD H:I:S」は、PHPで一般的に使用される日付と時刻の形式であり、年日の時間:数分:秒を表します。

  • time()現在のUnixタイムスタンプを返します。

  • gmdate()はこのタイムスタンプを受け取り、GMT標準に従って時間をフォーマットします。

4。実用的なアプリケーションシナリオ

  1. クロスタイムゾーンデータレコード:国際的なアプリケーションでは、GMT時間の統一された使用は、タイムゾーンの違いによって引き起こされるデータの混乱を回避するのに役立ちます。

  2. ログシステム:多くのシステムログはGMT時間形式を使用しており、統一された処理とシステムの比較を容易にします。

  3. APIタイムスタンプの要件:一部のAPIでは、特に安全な署名検証中に、タイムスタンプがGMT時間である必要があります。

5。日付()gmdate()を比較します

一部の開発者は、日付()gmdate()を混乱させる傾向があります。 2つの間の重要な違いはタイムゾーンです。

 <?php
echo "Local time: " . date("Y-m-d H:i:s") . "\n";
echo "GMT time: " . gmdate("Y-m-d H:i:s") . "\n";
?>

サーバータイムゾーンが東第8地区(中国など)に設定されている場合、出力は次のとおりです。

 Local time: 2025-05-22 15:45:30
GMT time: 2025-05-22 07:45:30

6。追加:ミリ秒時間を取得する(GMTで)

Gmdate()はミリ秒を直接サポートしていませんが、 MicroTime()分割を介して実装できます。例えば:

 <?php
$micro = microtime(true);
$seconds = floor($micro);
$milliseconds = round(($micro - $seconds) * 1000);
echo gmdate("Y-m-d H:i:s", $seconds) . ".$milliseconds GMT";
?>

出力は似ています:

 2025-05-22 07:45:30.123 GMT

7。ヒント

  • 展開するPHPプログラムがGMT時間を均一に使用する必要がある場合、デフォルトのタイムゾーンをUTCに設定できます。

 <?php
date_default_timezone_set('UTC');
?>

ただし、現時点でDate()を使用するとGMT時間も返されるため、 GMDATE()を使用する必要はなくなります。

8。結論

gmdate()time()を組み合わせることにより、PHPで現在のGMT時間を非常に便利に取得できます。この方法は、クロスタイムゾーン処理、統一ロギング、サーバー側の開発において非常に実用的です。これは間違いなく、時間出力を正確に制御する必要があるPHP開発者にとってマスターする価値のあるスキルです。

より実用的なコード参照については、ご覧ください。
https://gitbox.net/snippets/php-gmtime