我的数据库以mysql DateTime格式存储两个日期YYYY-MM-DD HH:MM:SS
.当我得到这些数据(与其他字符串等),我想将其转换为另一种格式,也许DD.MM.YYYY HH:MM:SS
并在我的视图中显示在表格单元格中.我的数据库日期被称为date_begin
和date_end
.
更好的是,当我从数据库获取此日期时,将其转换为DD.MM.YYYY
格式,分隔日期和时间,将时间存储在自定义字符串("HH1:MM1 - HH2:MM2")中并将两者都放在我的视图中.
我怎样才能做到这一点?我发现了一些在视图上转换的示例,而不是在控制器中,但我认为这对MVC不好.
不知道你在哪里得到"格式化视图中的日期对MVC不好"的印象,因为这不是一个问题.
如果您使用Eloquent Models,您可以非常轻松地完成:
1.将列添加到$dates
模型类中的属性:
protected $dates = ['date_begin', 'date_end'];
这将确保值获得突变到碳的实例.
2.在视图文件中,您可以使用format
Carbon提供的方法,如下所示:
{{ $item->date_begin->format('Y.m.d') }}
{{ $item->date_begin->format('H:i:s') }}
{{ $item->date_begin->format('Y.m.d H:i:s') }}
无需在时间和日期中拆分值,只需使用您想要的任何格式从DateTime值显示您想要的内容.
如果您没有使用Eloquent模型,那么您可以手动使用Carbon来格式化您的值,如下所示:
{{ Carbon\Carbon::createFromFormat('Y-m-d H:i:s', $item->date_begin)->format('Y.m.d') }}