Datetime Laravel:显示时间戳字段的个人格式

Datetime Laravel:显示时间戳字段的个人格式,datetime,laravel,Datetime,Laravel,在我的项目中,我使用此代码格式化时间戳字段 date('D m Y H:i', strtotime($post->created_at)) 但是因为我有很多地方和字段要显示,所以有点无聊,如果我需要更改格式,维护起来就不容易了 我想知道是否有办法重新标记输出格式您可以在Post模型中创建访问器函数 public function getCreatedAtAttribute($value) { return date('D m Y H:i', strtotime($value))

在我的项目中,我使用此代码格式化时间戳字段

date('D m Y  H:i', strtotime($post->created_at))
但是因为我有很多地方和字段要显示,所以有点无聊,如果我需要更改格式,维护起来就不容易了


我想知道是否有办法重新标记输出格式

您可以在Post模型中创建访问器函数

public function getCreatedAtAttribute($value)
{
    return date('D m Y H:i', strtotime($value));
}
这样,每次在调用
$post->created_时,它都会显示访问者返回的日期,而不是默认值

更多信息请点击此处:

如果您不想在所有模型中使用此函数,您可以创建一个BaseModel类,并使您的模型扩展此BaseModel类

我还找到了另一个解决方案:

\Carbon\Carbon::setToStringFormat('D m Y H:i');

您可以使用这一行(以global.php为例)但是它会改变所有应用程序中的日期格式。

创建一个变量$format='D m Y H:i';然后将变量保存在助手类、命名空间中并自动加载该类,然后您可以使用helper->formathnx,这是一个开始,但我正在搜索一个更通用的变量。在我的示例中,我有很多时间戳字段n它可能会变得很长很无聊对每个领域都这样做:)完美。Thanx这正是我一直在寻找的解决方案。在编辑您的评论之前,我也重做了我的模型,现在它们来自我的模型库。我使用了mutators并添加了=>format('xxxx'),而不是使用您编写的访问器。但您的新解决方案是完美的:)