使用Twig访问指定的Array数组

时间:2013-01-17 20:04:30

标签: php html arrays templates twig

我有以下数组,我想用twig访问指定元素的值。

numbers => Array ([01234567] => Array ( [0] => 9876543210 [1] => 8765432109 [2] => 0000000000))

我知道numbers中只有一个条目,所以我想直接使用密钥01234567访问数组。

即使很难numbers|keys[0]确实返回正确的密钥,我也不能像numbers[numbers|keys[0]]那样使用它来获取数组。我也试过attribute(array, item)函数,但我没有让它工作。

是否可以直接访问它,还是需要使用循环?

1 个答案:

答案 0 :(得分:1)

你找到了一个可能没有记录的"功能" Twig。如果选中the source code,twig会尝试确定给定的密钥是否为数字。它使用ctype_digit函数进行检查,该函数检查变量是否仅包含数字字符。

您的问题中的示例包含一个数组键,它符合以下条件:它只包含数字。不幸的是,它也以零开始,当字符串转换为整数时将被删除。

我不完全确定这是预期的行为,因此您可能会尝试将此示例报告为错误。

对于当前的twig实现,因为除了循环结构之外的所有内容都使用了getAttribute函数,除了使用for循环之外别无选择。