タイムゾーンについて学ぶ
地球全体のタイムゾーンは、セントラルタイムゾーン(ゼロタイムゾーン)、イーストゾーン1〜12、ウェストゾーン1〜12の24のタイムゾーンに分かれています。各タイム ゾーンには独自の現地時間があり、同時に各タイム ゾーンの現地時間は 1 ~ 23 時間異なります。いいえ、よく言われるのは、ここ中国では昼間ですが、ここでは夜間です。米国では。 。これがタイムゾーンの違い、時差です。たとえば、イギリスのロンドンの現地時間は、中国の北京の現地時間と8時間異なります。国際無線通信の分野では、略して協定世界時(UTC)と呼ばれる統一時間が使用されます。 UTC はグリーンウェイと同じです グリニッジ標準時 (GMT) は英国ロンドンの現地時間と同じです。
タイムゾーンの設定方法
PHP5.0ではdate()関数が書き直されたため、現在の時刻と日付はシステム時刻より8時間短くなります。PHPでは、デフォルトの時刻はグリーンマケドニア時間です。標準時、つまりゼロ タイム ゾーンが使用されます。通常、北京は東 8 区に属しているため、現地時間を取得するには、PHP のタイム ゾーン設定を変更する必要があります。言語。
PHP では、タイムゾーンを変更する方法が 2 つあります:
最初の方法:
php.ini ファイルの設定を変更し、[data] の下にある;date.timezone = オプションを探します。を削除して、前の引用符を「date.timezone = Asia/Shanghai」に変更し、Apache サーバーを再起動します
2 番目:
アプリケーションでは、時刻を使用する前に次の関数を追加する必要がありますおよび date 関数
date_default_timezone_set(timezone);
timezone パラメーターは、PHP に認識されるタイムゾーン名を提供します。タイムゾーン名が認識できない場合、システムは UTC タイムゾーンを使用します。タイムゾーン名のリストは PHP マニュアルに記載されています。その中で、私の国で北京時間の設定に使用できるタイムゾーンには、PRC (中華民国)、アジア/重慶 (重慶)、アジア/上海 (上海) が含まれます。 ) または Asia/Urumqi (ウルムチ) 、これらのタイムゾーン名は同等です。
設定が完了すると、date()関数が正常に使えるようになり、時差の問題もなくなりました。
タイムゾーンの例を見てください
<?php header("Content-type:text/html;charset=utf-8"); //设置编码 echo "UTC时间:".date("Y-m-d H:i:s")."<br>"; date_default_timezone_set("PRC"); echo "北京时间:".date("Y-m-d H:i:s")."<br>"; ?>
実行結果は次のようになります:
プログラムをスペースにアップロードする場合、設定時にphpを変更することはできません。システム タイム ゾーン .ini ファイルでは、date_default_timezone_set() 関数を使用してタイム ゾーンを設定することしかできません。
以上がPHP日時関数のシステムタイムゾーン設定の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。