我对datetime有一个非常奇怪的问题。存储在数据库中的日期时间在表单中显示为有效,但在正常打印时出错。
这是我的列数据:
delivery_date = datetime type
value = 2015-11-06 13:00:00 (Y-m-d H:i:s)
这是我的表单数据:
$builder->add('delivery_date', 'date', ['label' => 'Teslim', 'widget' => "single_text"]);
输出:
打印代码:
<tr>
<td>Sipariş Tarihi</td>
<td>{{ order.createdAt|date("d F Y, l, H:i")|format_date("dd MMMM y, EEEE, HH:mm") }}</td>
</tr>
<tr>
<td>Teslim Tarihi</td>
<td>{{ order.deliveryDate|date("d F Y, l")|format_date("dd MMMM y, EEEE") }}</td>
</tr>
<tr>
<td>Son Güncelleme</td>
<td>{{ order.updatedAt|date("d F Y, l, H:i")|format_date("dd MMMM y, EEEE, HH:mm") }}</td>
</tr>
<tr>
<td>Son Hareket</td>
<td>{{ order.movements.last.createdAt|date("d F Y, l, H:i")|format_date("dd MMMM y, EEEE, HH:mm") }}</td>
</tr>
第二行名为“teslim tarihi”是错误的。在形式中它是真的,因为日是06,但是打印日是05.其他行具有相同的列类型“datetime”。但是现在没有问题。
顺便说一下;
导致这种差异的原因是什么?
答案 0 :(得分:0)
链接这两个过滤器是无稽之谈。以一种方式格式化日期没有意义,只是为了之后直接将其转换为其他格式。如果它涉及打印月份名称等,您可以使用Intl Extension中的localizeddate
过滤器。