php - Laravel 显示与我的数据库不同的日期

标签 php mysql laravel date laravel-5.3

我的项目有问题。当我将值存储在我的数据库中时,它工作得很好。但是当我想显示该值时,它会给我一个未定义的日期,该日期未存储在我的数据库中。 Please See the Image

在我的数据库中,created_at 字段值为 2017-02-18 16:23:37。但是当我想在我的 View 页面中显示这个时,它给了我这个

It shows me this 它给了我 2017-02-02 09:19:40 的值(value)。我不明白怎么了。 我只显示 created_at 字段。请帮助我

我的 Controller 是

public function showApplication() {
        $dataList = ApplicationModelOL::leftJoin('certificate', 'application.application_certificate_id', 'certificate.certificate_track_id')
                ->where('application_users_id', Auth::User()->users_track_id)
                ->get();
        return view('frontend.pages.application', compact('dataList'));
    }

我的观点是

@foreach($dataList as $data)
<tr>
    <td>{{ $data->certificate_name_en }}</td>
    @if($data->application_delivery_mode == 195126)
    <td>Self</td>
    @else 
    <td>Via Post</td>
    @endif
    <td class="hidden-phone">{{ $data->created_at }}</td>
    <td class="hidden-phone">
        <span class="label label label-warning">Pending</span>
    </td>
    <td class="hidden-phone">
        <span class="label label-primary"><i class="fa fa-edit"></i></span>&nbsp;
        <span class="label label-danger"><i class="fa fa-trash"></i></span>
    </td>
</tr>
@endforeach

最佳答案

当您的 MySQL 时区与框架中设置的 php 时区不同时,就会出现此问题。 要同步您的时区,您可以使用以下代码:

PHP:

date_default_timezone_set('Asia/Tehran');

MySQL:

$timeZone = (new DateTime('now', new DateTimeZone('Asia/Tehran')))->format('P');
$pdo->exec("SET time_zone='$timeZone';");

关于php - Laravel 显示与我的数据库不同的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42314739/

相关文章:

php - Yii- 获取由正斜杠分隔的参数。

PHP mySQL 查询返回单个字段作为 2 元素数组

php - 需要一个不错的jQuery/AJAX教程(与表单上传有关)

mysql - Laravel 上的外键

php - [php] 中 foreach 循环中的求和值

php - 为不同的端点使用多个数据库

php - 在数据库中存储图像引用的最佳实践

PHP Mysql数据插入

php - 如何通过 php 和 mysql 进行更智能的搜索

php - 多次扩展 Laravel 验证器