PHP でタイムゾーンのドロップダウン リストを生成するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-10-19 21:53:29
オリジナル
772 人が閲覧しました

How to Generate a Drop-Down List of Timezones with PHP?

PHP を使用したタイムゾーンのドロップダウン リストの生成

ほとんどの Web サイトでは、ユーザーの優先タイムゾーンで日付を表示する方法が必要です。以下に、使用できるタイムゾーンの 2 つのリストと、PHP 5 以降で使用できる組み込みの PHP DateTime クラスを使用する 1 つのメソッドを示します。

ハードコードされたタイムゾーン リストの使用

この方法では、HTML

<code class="html"><option value="-12">(GMT - 12) Baker Island Time</option>
<option value="-11">(GMT - 11) Niue Time, Samoa Standard Time</option></code>
ログイン後にコピー

この方法はシンプルで、追加のライブラリやコードを必要とせずに使用できます。ただし、新しいタイムゾーンが追加または削除されると、リストを維持するのに時間がかかる場合があります。また、どのタイムゾーンがユーザーの国に関連しているかを知ることは難しい場合があります。

PHP の日付と時刻関数の使用

PHP には、次の目的で使用できるいくつかの関数とオブジェクトが用意されています。タイムゾーンを管理します。 DateTimeZone クラスを使用すると、タイムゾーン オブジェクトを作成し、UTC からのオフセットにアクセスできます。 DateTime クラスを使用すると、日付オブジェクトを作成し、そのタイムゾーンを設定できます。これらのクラスを使用すると、タイムゾーンのドロップダウン リストを動的に生成できます。

<code class="php">$timezones = DateTimeZone::listAbbreviations();

foreach ($timezones as $tz) {
  $name = $tz['timezone_id'];
  $offset = $tz['offset'];

  echo "<option value=\"$name\">$name (UTC $offset)</option>";
}</code>
ログイン後にコピー

この方法は、ハードコードされたリストを使用するよりも柔軟です。 PHP インストールから現在のタイムゾーンのリストを取得し、夏時間の変更に合わせて自動的に調整できます。ただし、実装するにはより多くのコードが必要であり、古いバージョンの PHP では十分にサポートされていない可能性があります。

どの方法が最適ですか?

生成するための最良の方法タイムゾーンのドロップダウン リストは、アプリケーションの特定の要件によって異なります。タイムゾーンのリストが小さく、変更される可能性が低い場合は、ハードコードされた値を使用するだけで十分な場合があります。リストが大きいか動的である場合は、DateTimeZone クラスまたは DateTime クラスを使用する方が良い選択となる可能性があります。

以上がPHP でタイムゾーンのドロップダウン リストを生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!