【问题标题】:Activerecord Timezone Incorrect FormatActiverecord 时区格式不正确
【发布时间】:2014-10-06 23:26:21
【问题描述】:

我有两台服务器,它们的设置相同,php 5.5、mysql 5.6、apache 2.9,它们都在 php.ini 中设置了相同的时区。

我的 Linode VPS 是有问题的服务器,我的另一台专用服务器工作正常。

使用 T 表示时区时会出现问题。

return $datetime->format('Y-m-d H:i:s T');

是在linode上不起作用的代码行,但在其他服务器上可以正常工作。

这是错误输出。

exception 'ActiveRecord\DatabaseException' with message '22007, 1292, Incorrect datetime value: '2014-08-12 22:55:21 EDT' for column 'created_at' at row 1' in /home/chris/sites/domain.com/app/vendor/php-activerecord/lib/Connection.php:276

【问题讨论】:

    标签: php mysql activerecord linode


    【解决方案1】:

    这可能是很多事情。一种尝试可能是 SQL 模式。尝试在两台服务器上运行它,看看是否有不同:

    SELECT @@sql_mode;

    我也会尝试直接在数据库上进行查询,而不是通过 ActiveRecord,以避免中间件产生任何潜在的怪异。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多