laravel数据库timestamp时区显示问题

发布时间:2023-04-29 00:08:32 阅读:1060次

在设置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'):''

如有问题,可以QQ搜索群1028468525加入群聊,欢迎一起研究技术

支付宝 微信

有疑问联系站长,请联系QQ:QQ咨询

转载请注明:laravel数据库timestamp时区显示问题 出自老鄢博客 | 欢迎分享