(0275) 2974 127
Dalam pengembangan aplikasi berbasis PHP, pengaturan timezone (zona waktu) merupakan hal penting yang sering diabaikan. Sebuah aplikasi yang tidak mengatur timezone dengan benar dapat menampilkan waktu yang salah, terutama jika server dan pengguna berada di lokasi yang berbeda. Kesalahan waktu ini bisa berdampak pada fitur penting seperti pencatatan log, waktu transaksi, timestamp database, hingga penjadwalan otomatis (cron job).
Untuk itu, PHP menyediakan cara mudah untuk mengatur timezone secara manual melalui script. Pada artikel ini, kita akan membahas secara lengkap bagaimana cara mengatur timezone di PHP, apa saja opsi yang tersedia, serta contoh implementasinya.
Timezone sangat berpengaruh terhadap:
Waktu server yang ditampilkan kepada pengguna.
Fungsi date(), time(), strtotime(), DateTime, dan lainnya.
Pencatatan event penting seperti login, transaksi, dan error log.
Konsistensi waktu antara server dan database.
Jika timezone tidak disesuaikan, aplikasi bisa menampilkan waktu yang mundur atau maju beberapa jam, khususnya jika server berada di negara berbeda seperti US atau Eropa.
Sebelum mengubah timezone, Anda bisa mengecek timezone bawaan server dengan menggunakan fungsi:
Outputnya bisa berupa:
UTC
America/New_York
Asia/Singapore
atau lainnya, tergantung konfigurasi server.
Jika hasilnya bukan timezone lokasi Anda, maka Anda perlu mengubahnya.
PHP menyediakan fungsi khusus untuk mengatur timezone, yaitu:
Contoh implementasi lengkapnya:
Output (misalnya):
Berikut beberapa timezone populer:
| Lokasi | Timezone |
|---|---|
| Indonesia (Jakarta) | Asia/Jakarta |
| Indonesia (Makassar) | Asia/Makassar |
| Indonesia (Jayapura) | Asia/Jayapura |
| Singapura | Asia/Singapore |
| Tokyo | Asia/Tokyo |
| Dubai | Asia/Dubai |
| London | Europe/London |
| New York | America/New_York |
Jika ingin melihat seluruh daftar timezone yang tersedia di PHP:
Selain melalui script PHP, Anda juga dapat mengatur timezone lewat file php.ini. Ini berguna jika Anda ingin seluruh aplikasi otomatis menggunakan timezone tertentu.
Buka file php.ini
Cari baris:
Ubah menjadi:
Restart server (Apache/Nginx)
Perubahan ini akan berlaku untuk semua script PHP di server tersebut.
Jika Anda menggunakan class DateTime, Anda dapat menyetel timezone langsung di konstruktor:
Atau mengubah timezone yang sudah ada:
Gunakan timezone UTC di server, lalu konversikan ke timezone user.
Simpan timestamp dalam format UTC (Y-m-d H:i:s atau Unix timestamp), supaya konsisten.
Hindari menggunakan timezone berbasis offset seperti GMT+7; gunakan format regional (Asia/Jakarta).
Pastikan database (MySQL/PostgreSQL) juga berada pada timezone yang sama jika diperlukan.
Mengatur timezone di PHP adalah langkah penting untuk memastikan aplikasi menampilkan waktu yang benar dan konsisten. PHP menyediakan berbagai cara untuk melakukannya, mulai dari penggunaan fungsi date_default_timezone_set(), konfigurasi php.ini, hingga pengaturan melalui class DateTime.
Dengan pengaturan timezone yang tepat, aplikasi Anda akan lebih akurat dalam mencatat waktu, memproses data, dan memberikan informasi yang sesuai kepada pengguna.
Email newsletter adalah salah satu strategi pemasaran paling efektif untuk membangun hubungan dengan audiens, meningkatkan…
Membersihkan cache Safari di iPhone maupun iPad merupakan langkah penting untuk menjaga performa perangkat tetap…
Pengelolaan email server merupakan salah satu aspek penting dalam menjaga stabilitas dan keamanan infrastruktur IT.…
Dalam dunia digital marketing dan SEO modern, tampilan konten saat dibagikan ke media sosial memiliki…
Laravel merupakan salah satu framework PHP yang populer karena kemudahan, keamanan, dan fleksibilitasnya. Salah satu…
Elementor merupakan salah satu plugin WordPress yang saat ini populer di kalangan pengguna untuk merancang…