Laravel / Lumen наложил метку времени на int - PullRequest
0 голосов
/ 15 сентября 2018

Временные метки создаются с помощью $table->timestamp('createdAt'); Для получения значения метки времени Unix.Я преобразовал его в Model как:

protected $casts = [
    'createdAt' => 'datetime:U',
]

Однако $model->toArray(); получает метку времени Unix в виде строки вместо int / number.

"createdAt"=> "1537003313",

Это должно быть:

"createdAt"=> 1537003313,

Я использую метод toArray, чтобы избежать итерации строк.Так что (int)$model->createdAt; не вариант.

1 Ответ

0 голосов
/ 15 сентября 2018

Попробуйте это с помощью int casting

(int)$timestamp

В вашем случае это должно быть

$casts['createdAt'] = (int)$casts['createdAt'];

Прочитайте это для получения дополнительной информации: http://php.net/manual/en/language.types.type-juggling.php

...