Pengenalan
Memaparkan tarikh dan masa yang betul adalah penting untuk sebarang laman web. Satu cabaran ialah menyediakan cara untuk pengguna memilih zon waktu pilihan mereka semasa pendaftaran. Artikel ini akan meneroka tiga kaedah berbeza untuk menjana senarai juntai bawah zon waktu menggunakan PHP.
Kaedah 1: Zon Waktu Berkod keras
Kaedah pertama melibatkan mencipta senarai secara manual zon waktu dengan offset yang sepadan. Berikut ialah contoh:
<code class="html"><select> <option value="-12">UTC - 12:00</option> <option value="-11">UTC - 11:00</option> <option value="-10">UTC - 10:00</option> <!-- ... add more timezones here --> </select></code>
Walaupun kaedah ini mudah, ia memerlukan penyelenggaraan manual apabila zon waktu baharu atau perubahan kepada yang sedia ada timbul.
Kaedah 2: Kelas DateTimeZone PHP
PHP 5 memperkenalkan kelas DateTimeZone, yang menyediakan senarai zon waktu yang komprehensif. Kod berikut akan menjana senarai lungsur menggunakan kelas ini:
<code class="php"><?php $timezones = DateTimeZone::listIdentifiers(DateTimeZone::ALL); echo '<select>'; foreach ($timezones as $timezone) { echo '<option value="' . $timezone . '">' . $timezone . '</option>'; } echo '</select>'; ?></code>
Kaedah ini menawarkan pendekatan yang lebih dinamik, tetapi ia memerlukan sedikit pengetahuan pengaturcaraan dan mungkin termasuk zon waktu yang tidak berkaitan dengan pangkalan pengguna anda.
Kaedah 3: Senarai Singkatan Zon DateTime PHP
Sebagai alternatif, anda boleh menggunakan kaedah DateTimeZone::listAbbreviations() PHP, yang menyediakan senarai zon waktu berdasarkan singkatannya. Berikut ialah kodnya:
<code class="php"><?php $abbreviations = DateTimeZone::listAbbreviations(); echo '<select>'; foreach ($abbreviations as $timezone) { foreach ($timezone as $key => $info) { if ($info['timezone_id']) { echo '<option value="' . $info['timezone_id'] . '">' . $key . '</option>'; } } } echo '</select>'; ?></code>
Kaedah ini menggabungkan fleksibiliti kelas DateTimeZone dengan senarai singkatan yang lebih mesra pengguna. Ia sesuai untuk mempersembahkan pelbagai zon waktu kepada pengguna dengan cara yang boleh dibaca.
Pengesyoran
Kaedah terbaik untuk aplikasi anda bergantung pada keperluan khusus anda. Kaedah 3, menggunakan kaedah DateTimeZone::listAbbreviations(), menawarkan keseimbangan fleksibiliti, kebolehgunaan dan penyelenggaraan yang rendah. Ia merupakan penyelesaian yang mantap untuk kebanyakan senario di mana pengguna perlu memilih zon waktu pilihan mereka.
Atas ialah kandungan terperinci Bagaimana untuk Menjana Senarai Drop Down Zon Waktu untuk Pengguna Menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!