Laravel 优雅解决接口数据带T Z格式问题(日期序列化)

Song4913 次浏览0个评论2020年06月22日

在我们使用Laravel开发API接口过程中,返回的JSON数据时间格式带有TZ,格式如下:

{
    "id": 1,
    "created_at": "2020-06-08T07:31:02.000000Z",
    "updated_at": "2020-06-20T10:03:36.000000Z"
}

一、TZ是什么?

T表示分隔符,Z表示的是UTCUTC:世界标准时间,在标准时间上加上8小时,即东八区时间,也就是北京时间。

二、如何解决?

如果你希望继续保持之前所用的格式,你可以重写模型的serializeDate方法:

<?php

namespace App\Models;
use DateTimeInterface;

......

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

具体参考文档:Laravel 日期序列化

提交评论

请登录后评论

用户评论

    当前暂无评价,快来发表您的观点吧...

更多相关好文

    当前暂无更多相关好文推荐...