Saya sedang mengerjakan aplikasi web di mana akan ada banyak pengguna berbeda dari seluruh dunia membuat pembaruan. Saya bertanya-tanya apa cara terbaik untuk menangani zona waktu? Idealnya, ketika suatu peristiwa terjadi, semua pengguna melihatnya menggunakan waktu lokal mereka.
Haruskah waktu OS server diatur ke GMT, waktu lokasi fisik, atau waktu lokasi pengembangan saya?
Haruskah logika aplikasi (PHP) dan database (MySQL) diatur untuk menyimpan data sebagai GMT atau waktu lokal (lokal ke pengguna)?
Apakah ada standar industri atau bahkan solusi sederhana / jelas yang tidak saya lihat?
timestamp
memiliki rentang terbatas dari1970-01-01 00:00:01 UTC
hingga2038-01-19 03:14:07 UTC
, yang misalnya tidak memungkinkan untuk menyimpan tanggal lahir (setidaknya untuk siapa pun yang berusia lebih dari 40 tahun). Sebenarnya itutimestamp
adalah solusi yang paling tidak cocok untuk menyimpan catatan tanggal dan waktu. Gunakandatetime
bidang dan simpan semuanya sebagai UTC.Saya akan menggunakan waktu UTC dalam database, dan minta klien mengonversinya ke waktu lokal mereka saat diperlukan
sumber