我试图格式化日期并将每个项目(月,日和年)放在div或span中。我使用的SaaS平台提供了这样的日期:
2015-03-07 22:54:00
我尝试将此日期格式化为3个单独的项目,并将它们放在div中,如下所示:
<span class="day">07</span>
<span class="month">March</span>
<span class="year">2015</span>
因此我需要删除-
后面的所有内容,并在div中调用它:
<span class="day">{{ article.date | split('-')[2] }}</span>
<span class="month">{{ article.date | split('-')[1] }}</span>
<span class="year">{{ article.date | split('-')[0] }}</span>
这给了我一个输出:
<span class="day">07 22:54:00</span>
<span class="month">03</span>
<span class="year">2015</span>
我遇到的问题是在一天之后删除时间并将月份更改为文本表示。
我知道可以使用PHP日期函数完成,但我无法使用它。我面临的问题是每个-
之后需要删除日期。
有没有人可以帮助我?
答案 0 :(得分:7)
注意:他们是两个非常不同的东西!!!
{% set dateTime = date(article.date) %}
<span class="day">{{ dateTime | date('d') }}</span>
<span class="month">{{ dateTime | date('F') }}</span>
<span class="year">{{ dateTime | date('Y') }}</span>
首先,date()
函数将字符串日期转换为DateTime对象。
然后,date
过滤器使您可以使用等效的DateTime::format
PHP函数,因此您可以为所需的输出使用单独的表示法。
如果您需要将月份名称翻译为区域设置,则可以管道trans
过滤器,但必须首先启用它。