环境说明

Laravel 版本为 7,数据库采用的是 MySQL,字段类型为 datetime,在表中保存的格式为 Y-m-d H:i:s
使用 Eloquent ORM 查询数据,返回 json 数据时,时间的格式与数据库保存的不一致,多了时区和小数秒

比例 2020-11-16 13:45:28 会返回 2020-11-16T05:45:28.000000Z

如何使用 API json 返回的日期格式与数据库保持一致?

解决办法

在 Eloquent 模型 Model 定义文件中加入如下

    protected function serializeDate(DateTimeInterface $date)
    {
        return $date->format($this->dateFormat ?: 'Y-m-d H:i:s');
    }

参考文档:https://learnku.com/docs/laravel/7.x/upgrade/7445#upgrade-7.0

标签: PHP, Laravel