在 Twig 中格式化日期时间

Formatting datetimes in Twig

在我的 mySQL 数据库中,我有一些日期 (EventDate) 和时间(EventStartTEventEndT)变量,我试图格式化这些变量以供展示。

之前我循环查询数组并将表示格式应用为:

$fdate=date_format(date_create($row['EventDate']), "l jS \of F Y");
$stime=time_format($row['EventStartT'],"%H:%i");

这给了我:

但是,我现在正尝试使用带有 Doctrine 和 Twig 的 Symfony 框架来重新设计网站。我的树枝模板中有以下内容(其中 list 是返回的所有事件的数组):

{% block body %}
   {% for item in list %}
      <div class=''><strong>Date: {{ item.EventDate|date("l jS \of F Y") }} </strong></div>
      {% if item.EventStartT %} 
         <div class=''>Time:    {{ item.EventStartT|date("%H:%i") }} - {{  item.EventEndT|date("%H:%i") }} </div> 
      {% endif %}
   {% endfor %}
{% endblock %}

不幸的是,我得到的结果都没有给我:

这是因为您正在混合格式。第一个是正确的,第二个是来自 strftime,但是 date 过滤器使用 php date 格式。

只需删除 %:

item.EventStartT|date('H:i')

当然你的 $row['EventStartT'] 必须是一个 \DateTime 实例。