<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// この記事は、コードの例とは何の関係もありません,プレビューの例としてのみ</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"PHP 研究メモを処理する時間"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
</span><span><span class="hljs-comment"># 結合する方法strftime関数とdate_default_timezone_setタイムゾーンを設定します,現地時間が正しく表示されていることを確認してください</span></span><span>
進行中 PHP 開発中,時間処理は非常に1つ般的な要件です。さまざまな地理的場所にユーザーの現地時間を表示する必要がある場合,就必须合理タイムゾーンを設定します,それ以外の場合、表示エラーが発生する可能性があります。本文将介绍結合する方法 `</span><span><span class="hljs-title function_ invoke__">strftime</span></span><span>()` 関数と `</span><span><span class="hljs-title function_ invoke__">date_default_timezone_set</span></span><span>()` 来現地時間が正しく表示されていることを確認してください。
</span><span><span class="hljs-comment">## 1つ、`date_default_timezone_set` の役割</span></span><span>
PHP デフォルトのタイムゾーンは私たちが必要とするものではないかもしれません,したがって、使用する必要があります `</span><span><span class="hljs-title function_ invoke__">date_default_timezone_set</span></span><span>()` 明示的に指定します。例えば:
```php
</span><span><span class="hljs-title function_ invoke__">date_default_timezone_set</span></span><span>(</span><span><span class="hljs-string">'Asia/Shanghai'</span></span><span>);
</span></span>このように設定した後、PHPタイム関数は上海タイムゾーンを参照として使用します。設定されていない場合、UTCまたはサーバーシステムのタイムゾーンをデフォルトで使用して、時差をもたらすことができます。
STRFTIME()は、現在のロケールとタイムゾーンに依存するローカライズされた時間日出力をフォーマットするために使用されます。日付()関数と比較して、 strftime()は、ローカライズされた出力が必要なシナリオにより適しています。
簡単な例:
<span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">strftime</span></span><span>(</span><span><span class="hljs-string">"%Y-%m-%d %H:%M:%S"</span></span><span>);
</span></span>タイムゾーンが設定されていない場合、ここでの時間出力は、予想される現地時間と矛盾する場合があります。
2つを組み合わせることで、出力時間が指定されたタイムゾーンの正しい現地時間であることが保証されます。
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// タイムゾーンを設定します为上海</span></span><span>
</span><span><span class="hljs-title function_ invoke__">date_default_timezone_set</span></span><span>(</span><span><span class="hljs-string">'Asia/Shanghai'</span></span><span>);
</span><span><span class="hljs-comment">// フォーマット出力現在の時刻</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">strftime</span></span><span>(</span><span><span class="hljs-string">"%Y-%m-%d %H:%M:%S"</span></span><span>);
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>この出力の結果は、上海タイムゾーンの現在の時刻です。
マルチユーザーシステム:ユーザーがさまざまな国または地域で配布されている場合、ユーザー構成にタイムゾーン情報を保存し、 date_default_timezone_set()を呼び出して、ユーザーがアクセスしたときに動的に切り替えます。
ロギング:UTC時間はログファイルで均一に使用され、ユーザーに表示されると、レコードとフレンドリーなディスプレイの一貫性を確保するために現地時間に変換されます。
国際的なWebサイト: SetLocale()とStrftime()を組み合わせることで、正しいタイムゾーンを確保するだけでなく、ユーザー言語習慣に日付を表示できます。
date_default_timezone_set()でタイムゾーンを設定すると、正しいタイムゾーンに基づいてPHP実行されたすべての時間が実行されるようにします。 Strftime()は、ローカライズされた方法で時間のフォーマットをさらに支援できます。 2つを組み合わせて使用することにより、エラーやカオスを回避して、異なる環境で現地時間を正しく表示できるようにすることができます。
<span></span>