laravel框架时间显示问题

数据库中的时间是正常的格式 datatime

但是显示到网页就变成了

求高手 指引啊!我找了好多文献没用!!!

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

方案1,直接在Model里面加

    /**
     * 为数组 / JSON 序列化准备日期。
     *
     * @param  \DateTimeInterface  $date
     * @return string
     */
    protected function serializeDate(\DateTimeInterface $date)
    {
        return $date->format($this->dateFormat ?: 'Y-m-d H:i:s');
    }

方案2: 新建一个BaseModel

    /**
     * 为数组 / JSON 序列化准备日期。
     *
     * @param  \DateTimeInterface  $date
     * @return string
     */
    protected function serializeDate(\DateTimeInterface $date)
    {
        return $date->format($this->dateFormat ?: 'Y-m-d H:i:s');
    }

然后继承这个model

2年前 评论
raybon 2年前
sunshineGirl 2年前
巴啦啦臭魔仙 2年前
讨论数量: 6
giao哥
namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Base extends Model
{
    protected function serializeDate(\DateTimeInterface $date): string
    {
        return $date->format($this->getDateFormat());
    }
}
2年前 评论

Laravel7.0 默认转换成了格林尼治时间, 按照文档改一下就好 升级说明《Laravel 7 中文文档》

2年前 评论

方案1,直接在Model里面加

    /**
     * 为数组 / JSON 序列化准备日期。
     *
     * @param  \DateTimeInterface  $date
     * @return string
     */
    protected function serializeDate(\DateTimeInterface $date)
    {
        return $date->format($this->dateFormat ?: 'Y-m-d H:i:s');
    }

方案2: 新建一个BaseModel

    /**
     * 为数组 / JSON 序列化准备日期。
     *
     * @param  \DateTimeInterface  $date
     * @return string
     */
    protected function serializeDate(\DateTimeInterface $date)
    {
        return $date->format($this->dateFormat ?: 'Y-m-d H:i:s');
    }

然后继承这个model

2年前 评论
raybon 2年前
sunshineGirl 2年前
巴啦啦臭魔仙 2年前

这是啥原因呢?没遇见过这种情况

2年前 评论
hxlnt (楼主) 2年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!