在laravel中,如何将日期作为日期而不是日期时间格式获取?

时间:2018-05-13 12:22:53

标签: laravel eloquent

在我的数据库中,某些字段设置为日期,而其他字段则是日期时间或时间戳格式。但是,在获取数据时,还会显示“日期”字段,并在末尾附加00:00:00时间字符串。我该如何防止这种情况?

1 个答案:

答案 0 :(得分:0)

Eloquent: Mutators文档中所述,您可以使用date / datetime投射和其他格式参数。

class User extends Model
{
    protected $casts = [
        'created_at' => 'datetime:Y-m-d',
    ];
}

在将模型序列化为数组或json时,这将应用给定的格式。如果要在刀片模板中使用其他格式,可以使用要更改的datetime属性上的format()函数:

{{ $user->created_at->format('Y-m-d') }}{{ $user->created_at->toDateString() }}

您必须将created_at列添加到模型的$dates属性中:

protected $dates = [
    'created_at',
];

这基本上会将'created_at' => 'datetime'添加到您的$casts