PHP Timezone

//lh4.googleusercontent.com/-eAXyxy2JJKA/AAAAAAAAAAI/AAAAAAAAGS4/OHgzqHzCvtQ/s512-c/photo.jpg
September 19, 2018




Selamat pagi kali ini kami akan share bagaimana menggunkana PHP Timezone. Pada PHP, bekerja dengan zona waktu cukup menarik dengan memanfaatkan berbagai fungsi yang berada di bawah tanggal / waktu PHP. Dalam artikel ini, kita akan membahas daftar item berikut.



Cara mendapatkan daftar pengidentifikasi zona waktu yang didukung PHP.
  • Pencari zona waktu PHP dan setter.
  • Konversi zona waktu PHP.

Bagaimana Mendapatkan Daftar Pengidentifikasi Zona Waktu yang Didukung PHP
Pada versi PHP 5.2, PHP ia memperkenalkan kelas DateTimeZone di mana fungsi yang disebut sebagai listIdentifiers () didefinisikan. Fungsi ini akan mengembalikan daftar semua pengidentifikasi sebagai rangkaian string asosiatif.

Fungsi ini menerima dua argumen opsional, seperti,
  • DateTimeZone constants - Argumen ini digunakan untuk mengembalikan array pengidentifikasi zona waktu sehubungan dengan benua, sub-benua, negara dan lain-lain. Jika ditetapkan sebagai SEMUA atau jika ini kosong, maka semua pengidentifikasi yang tersedia akan dikembalikan.
  • Kode Negara - Kode dua karakter standar digunakan untuk mewakili negara untuk argumen kedua ini. Dan itu membutuhkan argumen pertama harus PER_COUNTRY.

Kita dapat menjalankan fungsi ini dengan referensi nama kelas dengan menggunakan operator resolusi lingkup PHP seperti yang ditunjukkan di bawah ini.

 $timezoneIderntifiers = DateTimeZone::listIdentifiers();
print "<pre>";
print_r($timezoneIderntifiers);
print "</pre>"; 

Karena DateTimeZone :: listIdentifiers () tidak memiliki argumen, program di atas akan mengembalikan semua zona waktu yang tersedia untuk ditampilkan ke browser.

Di PHP, ada alias fungsi kelas DateTimeZone ini, yang dinamakan sebagai, timezone_identifiers_list (). Namun, karena disarankan untuk menggunakan kode yang ditingkatkan seperti yang telah kita lihat di artikel PHP Array Length, kita dapat memilih fungsi kelas DateTimeZone yang ditunjukkan pada contoh di atas.

PHP Timezone Getter dan Setter
PHP mencakup dua fungsi bernama date_default_timezone_get () dan date_default_timezone_set (), masing-masing sebagai pengambil zona waktu dan setter.
  • date_default_timezone_get () - Fungsi ini akan mengembalikan set zona waktu menggunakan penyetel zona waktu PHP, atau nilai yang ditentukan dengan direktif php.ini date.timezone jika ada. (Versi PHP di bawah 5.4, fungsi ini dapat mengambil nilai $ _ENV ["TZ"], jika tersedia.).
  • date_default_timezone_set () - Fungsi ini menerima format yang didukung PHP pengidentifikasi string zona waktu sebagai argumennya.

Dalam program berikut, pengambil waktu zona waktu PHP mengembalikan nilai opsi php.in sampai diganti oleh fungsi setter seperti yang ditunjukkan di bawah ini.

 $timezone_identifier = date_default_timezone_get();
echo $timezone_identifier . "<br/>";
date_default_timezone_set('Asia/Jakarta');
$timezone_identifier = date_default_timezone_get();
echo $timezone_identifier; 

Fungsi PHP lainnya untuk Mendapatkan / Mengatur Zona Waktu
  • tanggal (‘e’) / tanggal (‘T’) - tanggal () fungsi digunakan untuk mendapatkan pengenal zona waktu dengan meneruskan ‘e’ sebagai argumennya. Saat kami meneruskan 'T' ke fungsi ini, maka akan kembali zona waktu singkat.
  • setTimezone () - Fungsi ini digunakan untuk mengatur zona waktu pada objek DateTime oleh pengidentifikasi zona waktu yang diberikan sebagai argumennya.

Konversi Zona Waktu PHP
Di PHP, tidak ada fungsi inbuilt untuk mengkonversi dari satu zona waktu ke zona waktu lainnya. Sebaliknya, kita dapat memperoleh proses konversi ini dengan membuat instance DateTimeZone untuk zona waktu yang diperlukan dan instance ini harus diterapkan ke objek waktu tanggal yang terlibat dalam konversi zona waktu. Sebagai contoh,

 date_default_timezone_set('Asia/Jakarta');
$objDateTime = new DateTime("2000-10-14 12:12:12");
$timezone_array["asian_time"] = $objDateTime->format('d-m-Y H:i:s');
$objDateTimeZone = new DateTimeZone('America/Los_Angeles');
$objDateTime->setTimeZone($objDateTimeZone);
$timezone_array["us_time"] = $objDateTime->format('d-m-Y H:i:s');
print "<pre>";
print_r($timezone_array);
print "</pre>"; 

Kami juga telah menggunakan fungsi PHP Timezone ini pada project kami di antaranya

Sekian share kali ini semoga apa yang kami share bermanfaat bagi anda semua, jika ada yang belum dipahami dengan penggunaan timezone diatas silahkan tinggalkan komentar dibawah dan mulai berdiskusi dengan kami.


Related Post

SUBSCRIBE TO OUR NEWSLETTER

closed