前幾天在使用laravel-admin擴充套件的時候出現了這個現象,用model生成controller的時候時間格式是如圖所示。
明明在資料庫里美這個.000000Z的,那這個.000000Z是如何出現的呢?
這是因為從laravel7開始,資料的格式化(data serialization)的時候就會出現這樣的現象。
具體問題的說明在這裡:
learnku.com/docs/laravel/7.x/upgra...
當碰到日期時間的時候,框架用到了carbon的toJson()方法,導致的結果會是這樣的,會產生跟ISO-8601相容的格式,而且這個總是以UTC的格式顯示。這個我們們先不刨根問底了。
如果想去掉就要在模型檔案裡這樣操作:
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');
}
加完這個問題就解決了。
本作品採用《CC 協議》,轉載必須註明作者和本文連結