Вот как я мог это решить:
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
Разрывное изменение задокументировано в официальной углеродной документации .