日期从MySQL数据库中检索时更改

时间:2017-03-16 00:27:34

标签: php mysql laravel

我有一个从数据库中检索日期的查询。我的问题是日期与数据库中存储的内容有所不同。

在数据库中,日期为2017-01-31 23:01:00。当我从数据库中检索它时,echo现在是2017-02-01 01:01:00的日期。

导致此更改的原因是什么?如何解决?

我的代码如下。代码在Laravel控制器类中:

$test_data = UserTest::where('test_id', '=', $id)
    ->where('user_id', '=', $userId)
    ->select('date')
    ->get();

echo $test_data[0]->date; // outputs: 2017-02-01 01:01:00

修改:在Laravel config/app.php中,我的时区设置为:'timezone' => 'Australia/Melbourne',。我的PHP.ini有date.timezone = UTC

1 个答案:

答案 0 :(得分:0)

在config / app.php中,您可以设置默认时区

'timezone' => 'Australia/Sydney', // or simply 'UTC'

您之前保存的记录仍会被抵消。但是你从现在开始节省的那些都是正确的。