我的公司最近刚刚将我们的 MySQL 数据库移至 Aamazon Web Service 的 RDS 并作为实例。
问题是应用程序依赖于时区信息,而 MySQL(在 RDS 下)中的时区设置为 UTC 并且无法更改。
所以我想知道如何在我的 Zend Framework 中根据每个连接来更改它。
我真的不知道从哪里开始,有什么建议吗?
答案1
function setDbTimeZone(Zend_Db_Adapter_Abstract $dbAdapter, $timeZone)
{
$dbAdapter->exec("SET time_zone='$timeZone'");
}
用法:
$dbAdapter = new Zend_Db_Adapter_Pdo_Mysql([
// ...
]);
setDbTimeZone($dbAdapter, 'US/Pacific');
答案2
每个连接
按区域名称
SET time_zone = 'US/Pacific';
按 UTC 偏移量
SET time_zone = 'US/Pacific';
http://dev.mysql.com/doc/refman/5.5/en//time-zone-support.html