【发布时间】:2023-06-26 23:22:01
【问题描述】:
我有一个关于日期时间的非常奇怪的问题。存储在数据库中的日期时间在表单中显示为有效,但正常打印时出现错误。
这是我的列数据:
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。其他行具有相同的列类型“日期时间”。不过暂时没有问题。
顺便说一句;
- 我已经启用了国际扩展
- php版本是旧的稳定版5.5.30
- 时区是欧洲/伊斯坦布尔。
- 为 Symfony 使用 SonataIntlBundle。
- Os:Centos,日期命令有效(现在输出:Sun Oct 25 15:35:52 EEST 2015)。
造成这种差异的原因是什么?
【问题讨论】:
-
为什么在
date过滤器之后使用format_date过滤器?这必须失败.. -
不。一定是这样的兄弟。