Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 升级到Laravel 5.8后如何确定碳时区_Php_Laravel_Php Carbon_Laravel 5.8 - Fatal编程技术网

Php 升级到Laravel 5.8后如何确定碳时区

Php 升级到Laravel 5.8后如何确定碳时区,php,laravel,php-carbon,laravel-5.8,Php,Laravel,Php Carbon,Laravel 5.8,升级到Laravel 5.8后,“created_at”字段将返回如下字符串 “createdAt”:“2019-05-01T16:36:25.000000Z” 但是我想返回一个对象,就像以前在Laravel 5.7中一样 像这样: "createdAt": { "date": "2019-05-01 19:36:25", "timezone_type": 3, "timezone": "Asia/Baghdad" }, "date": null “创建数据”:{

升级到Laravel 5.8后,“created_at”字段将返回如下字符串

“createdAt”:“2019-05-01T16:36:25.000000Z”

但是我想返回一个对象,就像以前在Laravel 5.7中一样 像这样:

"createdAt": {
     "date": "2019-05-01 19:36:25",
     "timezone_type": 3,
     "timezone": "Asia/Baghdad"
},
"date": null
“创建数据”:{ “日期”:“2019-05-01 19:36:25.000000”, “时区类型”:3, “时区”:“亚洲/巴格达” }

我确实环顾了一下网络,没有发现任何关于它的信息,在升级指南中也没有。 我从参考资料中返回它,就像一个JSON:

公共功能待命($request)
{
返回[
'id'=>this->id,
'createdAt'=>$this->created\u在,
];
}

尝试返回日期的碳实例:

Carbon::parse($this->created_at)

这就是我解决问题的方法:

public function toArray($request)
{
    return [
        'id' => $this->id,
        'createdAt' => $this->created_at,
        'date' => Carbon::serializeUsing(function ($createdAt) {
          return [
              'date' => $createdAt->toDateTimeString(),
              'timezone_type' => $createdAt->timezone_type,
              'timezone' => $createdAt->tzName,
          ];
        }),
   ];
}
现在它返回如下对象:

"createdAt": {
     "date": "2019-05-01 19:36:25",
     "timezone_type": 3,
     "timezone": "Asia/Baghdad"
},
"date": null
中断更改记录在。

也返回字符串“createdAt”:“2019-05-01T16:36:25.000000 Z”