從Laravel7開始向胡,使用模型查詢數(shù)據(jù),created_at惊完、updated_at等日期類型的數(shù)據(jù)僵芹,查詢出來的結(jié)果都會(huì)慢8個(gè)小時(shí)
不多不少,剛好8個(gè)小時(shí)小槐。拇派。。于是想到了時(shí)區(qū)轉(zhuǎn)換問題
最后凿跳,查看Laravel7官方文檔https://learnku.com/docs/laravel/7.x/upgrade/7445#date-serialization件豌,找到問題所在:
image.png
實(shí)際開發(fā)過程中,可以創(chuàng)建一個(gè)特征庫FormatDate控嗜,或者在BaseModel中重寫父類方法茧彤,這里 使用的是特征庫FormatDate,在需要使用的模型中疆栏,直接use Formate即可曾掂。
<?php
namespace App\Models\Traits;
use DateTimeInterface;
trait FormatDate
{
/**
* 為數(shù)組 / JSON 序列化準(zhǔn)備日期。
*
* @param \DateTimeInterface $date
* @return string
*/
protected function serializeDate(DateTimeInterface $date)
{
return $date->format($this->dateFormat ?: 'Y-m-d H:i:s');
}
}