Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Klarifikasi Zona Waktu PHP/MySQL

Saya pikir ini yang Anda cari;

$dt_obj = new DateTime($row['date']); 
$dt_obj->setTimezone(new DateTimeZone('America/Los_Angeles')); 
echo $dt_obj->format('Y-m-d H:i:s');

Gunakan Daftar Zona Waktu yang Didukung .

Perbarui ke pertanyaan yang diedit:Untuk memastikan bahwa PHP melihat waktu dari database sebagai waktu UTC, lakukan sesuatu seperti ini:

$row['time'] = '2009-11-08 09:06:40';

$dt_obj = new DateTime($row['time'], new DateTimeZone('UTC')); 
echo 'UTC: ' . $dt_obj->format('Y-m-d H:i:s') . '<br />';  // UTC: 2009-11-08 09:06:40
$dt_obj->setTimezone(new DateTimeZone('America/Los_Angeles')); 
echo 'Los Angeles: ' . $dt_obj->format('Y-m-d H:i:s');  // Los Angeles: 2009-11-08 01:06:40


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL, Kesalahan 126:File kunci salah untuk tabel

  2. KIRI GABUNG di ZF2 menggunakan TableGateway

  3. Cari lokasi terdekat dengan Zip/Postal Code?

  4. Masalah koneksi Ruby on Rails

  5. SQL_NO_CACHE tidak berfungsi