在PHP 和MySQL 中同步時區
您正在開發一個需要使用PHP date() 函數在MySQL 中儲存日期的應用程式。有必要使用 NOW() 在 MySQL 中比較這些日期來計算時間差異。但是,PHP date() 函數使用 PHP 中定義的時區,而 NOW() 使用 MySQL 伺服器中配置的時區。
為了解決此問題,您嘗試了多種方法:
最終,MySQL 時區仍然存在
解決方案 ]
同步PHP 和MySQL 中的時區,無需手動控制台命令或修改php.ini:
PHP:
define('TIMEZONE', 'Europe/Paris');
date_default_timezone_set(TIMEZONE);
MySQL:
$now = new DateTime();
$mins = $now->getOffset() / 60;
$sgn = ($mins d', $hrs*$sgn, $mins);
// Assuming an existing DB connection named $db
$db->exec("SET time_zone='$offset';");
這種方法確保 PHP 和 MySQL 使用相同的時區,消除日期儲存和比較方面的差異。此外,它消除了手動時區設定或修改全域設定檔的需要。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3