今日PHP5でdate("H:i:s")を使ったところ、引数「H」で取り出した時刻がウィンドウ下の時刻と間違っていることが分かりました。情報を確認したところ、PHP5 の php.ini のデフォルト設定は、
[Date] ; 日付関数で使用されるデフォルトのタイムゾーンを定義します; date.timezone = このように、デフォルトの時刻ははGMT時間になります。通常は北京時間を使用します。date.timezone = PRC または date.timezone = Asia/Shanghai に設定できます。つまり: [Date] ; 日付関数で使用されるデフォルトのタイムゾーンを定義します date.timezone = Asia/Shanghai 「Asia/Beijing」に設定しないように注意してください。外国人は上海に興味があるようです (笑)。 php.ini を変更する権限がない場合は、関数 date_default_timezone_set('PRC'); または date_default_timezone_set('Asia/Shanghai'); を使用できます この関数は、すべてのデフォルトのタイムゾーンを設定するために使用されます。日付と時刻の関数。マニュアルには、「PHP 5.1.0 (このバージョンでは日付と時刻の関数が書き直されています) 以降、タイムゾーンが不正な場合、日付と時刻の関数を呼び出すたびに E_NOTICE レベルのエラー メッセージが生成されます。」と記載されています。ただし、「この関数は常に TRUE を返します (たとえ ここで関数をもう一度学習してください: string この関数の戻り値は次の順序に従います: 1: TZ 環境変数を使用します (空でない場合)。 3: date.timezone 設定オプション (設定されている場合)。 4: 独自の推測を行います (オペレーティング システムでサポートされている場合)。 5: 上記のオプションがいずれも成功しない場合は、 UTC についての詳細を確認してください: 協定世界時 (UTC) : A 協定世界時と呼ばれる妥協の時間スケールは 1972 年に導入されました。協定世界時と世界時 (UT1) の差が 0.9 秒を超えないようにするために、協定世界時には正または負のうるう秒が追加されます。したがって、協定世界時と国際原子時 (TAI) の間には、整数秒の差が生じます。閏秒をいつ追加するかを決定するのは、パリの国際地球回転局 (IERS) です。協定世界時。 中文名前は協定世界時です。 GMT = グリニッジ標準時。中国語名はグリニッジ標準時です (ここでは「w」は省略されており、「Green」は「グレン」と発音されます)。 UTC = GMT + /- 0.9 秒 したがって、UTC は 2 つの差を制御するために時々「うるう秒」を実行する必要があります 。
php5.1x のタイムゾーンの問題により、8 時間の差が生じます。コレクション php5.10 から、php にタイムゾーン設定が追加されました。これにより、中国のユーザーには 8 時間の時差が生じています。 関連する設定は、php.ini の date.timezone パラメーターを変更することです: [Date] ; 日付関数で使用されるデフォルトのタイムゾーンを定義します ; date.timezone = デフォルトではオフになっています。コメントして変更するだけです [Date] ; 日付関数で使用されるデフォルトのタイムゾーンを定義します date.timezone = PRC PRC は「中華人民共和国」です! その他のオプションについては、PHP マニュアルを参照してください。 しかし、上記のアジア地域は私たちの首都北京を恋しく思います、外国人が故意にそれをしたのではないかと思います! php.ini を変更する権限がない場合は、時刻と日付の関数を呼び出すときに date_default_timezone_set('PRC') を呼び出すだけです。 date_default_timezone_get() を呼び出して、現在のタイムゾーン設定を表示することもできます。 XXX の場合、中国本土で使用可能な値は次のとおりです: アジア/重慶、アジア/上海、アジア/ウルムチ (重慶、上海、台湾の順) 香港と台湾で使用可能な値: アジア/マカオ、アジア/香港、アジア/台北 (オーストラリア、香港、台北の順) 台湾地域は次のようになります: date.timezone = "Asia//Taipei" シンガポールがあります: Asia/Singapore この記事は、からのものですCSDN ブログ、転載する場合は出典を示してください: http://blog.csdn.net/keenx/archive/2006/03/21/631432.aspx dedecms:php5 タイムゾーン設定から抜粋 if(PHP_VERSION > '5.1') { $ time51 = 'Etc/GMT'.($cfg_cli_time > 0 ? '-' : '+').abs($cfg_cli_time); function_exists('date_default_timezone_set') @date_default_timezone_set($time51) ) : ''; }
PHP バージョンが 5.1 より大きい場合は、 $cfg_cli_time = -8; を実行します。これは、フォーマット後に data_default_timezone_set ("Etc/GMT+8") を使用して設定します。 北京のタイムゾーンは Etc/GMT+8 である必要があります タイムゾーン設定は通常 +8 時間に設定されます! グリニッジ標準時 (GMT) です $date = gmdate("Y-m-d H:i:s",time ()+8*3600) 条件を満たしていれば8ジャスト時間追加!関数か何かとして書いてください... ご自由に |