加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – Yii2 model-> created_date将来会在查询中返回

发布时间:2020-12-13 15:58:51 所属栏目:PHP教程 来源:网络整理
导读:我已将Yii- application- configuration- timezone设置为UTC,并使用模型attributeBehaviors自动使用 PHP的time()方法插入/更新时间戳. 问题是,保存到数据库的时间戳是将来的,当我对今天的记录执行搜索查询时,如果它们是在10到午夜之间创建的,则它们不会被返
我已将Yii-> application-> configuration-> timezone设置为UTC,并使用模型attributeBehaviors自动使用 PHP的time()方法插入/更新时间戳.

问题是,保存到数据库的时间戳是将来的,当我对今天的记录执行搜索查询时,如果它们是在10到午夜之间创建的,则它们不会被返回,因为时间戳实际上是明天.

我应该如何创建记录并执行搜索查询?

谢谢.

解决方法

看来PHP在任何MySQL时区之间都有区别.

尝试执行以下操作:

echo date_default_timezone_get() . "<br>";
echo Yii::$app->formatter->timeZone . "<br>";
echo Yii::$app->formatter->defaultTimeZone  . "<br>";
echo Yii::$app->db->createCommand('SELECT @@time_zone')->queryScalar()  . "<br>";
echo Yii::$app->db->createCommand('SELECT @@system_time_zone')->queryScalar()  . "<br>";

(查询是针对MySQL DBMS的,如果你有另一个 – 查询也将是另一个)

当你看到差异时 – 你必须在PHP和MySQL中设置相同的时区(for PHP,for Yii2)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读