我在 Twig 中有一个
array
变量,它可以保存一个带有字符串键的数组或一个带有 0-based 顺序数字键 的数组。对于字符串键,我想将其显示为<key>: <value>
,但对于数字键,我想将其显示为- <value>
:
{% set is_sequential = <check keys of array> %}
<ul>
{% for k, v in array %}
<li>{{ (is_sequential ? '- ' : k ~ ': ') ~ v }}</li>
{% endfor %}
</ul>
<check keys of array>
的支票是什么?,您可以将数组的键与使用 {% set is_sequential = <check keys of array> %}
函数创建的数组的键进行比较:
range()
的
array
,那么['a','b','c','d']
将给出字符串array|keys|join(',')
。现在您可以将该字符串与 0,1,2,3
的输出进行比较,这也会产生字符串 range(0, array|length - 1)|join(',')
:因此:
0,1,2,3