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

Song • 507 次浏览 • 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 日期序列化


原创文章,转载请注明 :Laravel 优雅解决接口数据带T Z格式问题(日期序列化) - Laravel学习网
原文出处: https://phpartisan.cn/news/138.html
问题交流群 :168117787
提交评论
要回复文章请先登录注册
用户评论
  • 没有评论
[ 配置教程 ] 在ubuntu16.04中部署LNMP环境(php7+maridb且开启maridb远程以及nginx多域名访问 )并配置laravel环境 【苹果支付二】apple pay苹果支付以及自动续订订阅开发