Blog post

Nowy format daty w Laravel 7

30 marca 2020Larabox.pl

Laravel od wersji 7, używa innego formatu serializacji daty.

Aktualnie Laravel używa metody toJSON od biblioteki Carbon, która produkuje datę w formacie zgodnym z ISO-8601, który zawiera również strefę czasową oraz ułamkowe sekundy.

Poprzednio data miała postać:

2019-12-02 20:01:00

Aktualnie będzie wyglądała tak:

2019-12-02T20:01:00.283041Z

Warto dodać, że format ISO-8601, zwraca domyślnie strefę czasową UTC.

Możemy zachować poprzedni format daty, jednak trzeba nadpisać metodę serializeDate w modelu.

use DateTimeInterface;

/**
 * Prepare a date for array / JSON serialization.
 *
 * @param  \DateTimeInterface  $date
 * @return string
 */
protected function serializeDate(DateTimeInterface $date)
{
    return $date->format('Y-m-d H:i:s');
}
Poprzedni wpis Następny wpis