在设置mysql数据库表的时候,如果日期字段使用的是timestamp
那么在显示的时候可能出现时区,如何转换
为了修改这个格式,我在Model里做了配置:
```
protected $casts = [
'created_at' => 'datetime:Y-m-d H:i:s',
'updated_at' => 'datetime:Y-m-d H:i:s',
];
```
```
/**
* 为数组 / JSON 序列化准备日期。
*
* @param \DateTimeInterface $date
* @return string
*/
use DateTimeInterface;
protected function serializeDate(DateTimeInterface $date)
{
return $date->format($this->dateFormat ?: 'Y-m-d H:i:s');
}
//protected function serializeDate(DateTimeInterface $date)
//{
//return $date->format('Y-m-d H:i:s');
//}
```
碰到无效的情况
只需要在输出的时候转化一下
```
'created_at' =>$this->created_at?$this->created_at->format('Y-m-d H:i'):''
```