Laravelのcreated_at、updatead_atの時刻をJSONで出力すると必ずUTC時刻になる問題を解決する
久しぶりの投稿……不動産の問題でバタバタしていた…… Laravelではtimezoneも正しく設定されていて、正常に保存されたデータを取得してobjectのまま出力すると、時刻は正常に出力される(Laravel内のtimezoneを計算して出力しているようだ)。しかし、JSONでtoArray()の形式で出力してしま
GGAMI
久しぶりの投稿……不動産の問題でバタバタしていた……
Laravelではtimezoneも正しく設定されていて、正常に保存されたデータを取得してobjectのまま出力すると、時刻は正常に出力される(Laravel内のtimezoneを計算して出力しているようだ)。しかし、JSONでtoArray()の形式で出力してしまうと、その時刻の値(createad_at、updatead_at)はUTC時刻で出力される。
https://laravel.com/docs/7.x/upgrade#date-serialization
Laravel 6では問題なかったが、7では問題が発生する……
{
protected function serializeDate(DateTimeInterface $date)
{
return $date->format('Y-m-d H:i:s');
}
}