在Twig模板中输出月份列表的最佳方法是什么?例如,在出生日期字段中创建一个月下拉列表。我所追求的格式是:
<option value="01">January</option>
<option value="02">February</option>
<option value="03">March</option>
<option value="04">April</option>
<option value="05">May</option>
答案 0 :(得分:4)
你可以使用一个简单的循环12来为每个月创建一个日期字符串,然后通过Twig的日期过滤器运行它,如下所示:
{% for month in 1..12 %}
{% set date = month ~ "/1/2016" %}
<option value="{{ date|date("m") }}">{{ date|date("F") }}</option>
{% endfor %}
这会产生所要求的格式:
<option value="01">January</option>
<option value="02">February</option>
<option value="03">March</option>
<option value="04">April</option>
<option value="05">May</option>
可以使用php's date format options轻松更改格式。
示例here的TwigFiddle。
答案 1 :(得分:3)
表单组件实际上是这样做的,您只需要设置格式:
$builder->add('birth_date', DateType::class, ['format' => 'ddMMMMyyyy']);
输出结果为:
<option value="1">January</option>
<option value="2">February</option>
<option value="3">March</option>
...