sql >> Databáze >  >> RDS >> Mysql

Objasnění časového pásma PHP/MySQL

Myslím, že to je to, o co vám jde;

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

Použijte Seznam podporovaných časových pásem .

Aktualizace upravené otázky:Chcete-li zajistit, aby PHP vidělo čas z databáze jako čas UTC, udělejte něco takového:

$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. ~/.psqlrc soubor pro DBA

  2. Systémové databáze SQL Server – údržba MSDB

  3. Oracle PL/SQL:Vytvořte balíček DML online

  4. MySQL:Nejrychlejší způsob, jak spočítat počet řádků