Php 细枝-在for循环中构建数组

Php 细枝-在for循环中构建数组,php,arrays,symfony,twig,Php,Arrays,Symfony,Twig,可以用值迭代地填充细枝数组吗 {% for question in questions %} {% set multipleChoiceArray = [] %} {% for multipleChoice in question.multipleChoiceAnswers %} {% set multipleChoiceArray = multipleChoiceArray|merge( multipleChoice.answerText ) %} {% en

可以用值迭代地填充细枝数组吗

{% for question in questions %}
{% set multipleChoiceArray = [] %}
    {% for multipleChoice in question.multipleChoiceAnswers %}
        {% set multipleChoiceArray = multipleChoiceArray|merge( multipleChoice.answerText )  %}
    {% endfor %}
{% endfor %}
问题在这里
multipleChoiceArray | merge(multipleChoice.answerText)

当我尝试传递一个数组时,例如key=loop.index like

{% set multipleChoiceArray = multipleChoiceArray|merge({"loop['index']":"multipleChoice['answerText']"})  %}
它可以工作,但数组包含字符串“[”循环['index']:“multipleechoice['answerText']””

当我尝试传递变量时,如:

{% set multipleChoiceArray = multipleChoiceArray|merge({loop.index:multipleChoice.answerText})  %}
例外情况是:哈希键后面必须跟一个冒号(:)。值“”的意外标记“标点符号”。“(“标点符号”应为值”:”)

所以我无法将值“multipleechoice.answerText”推送到“multipleechoice数组”中

有什么提示吗?
我只想收集所有可能的答案,然后检查答案是否在该数组中,并将某物计数并显示

合并的参数必须是一个数组或对象才能将其与现有数组或对象合并。所以把它写成一个包含一个元素的数组

{% set multipleChoiceAnswerText = multipleChoice.answerText %}
{% set multipleChoiceArray = multipleChoiceArray|merge([multipleChoice.answerText])  %}

这引发了一个异常:散列键必须是带引号的字符串、数字、名称或括号中的表达式(值为“[”yeah set is very ninja”的意外标记“标点符号”。您还可以使用set将对象数组分配给变量,然后循环使用它们。{%set cameras={“family1”:firstArray,“family2”:secondArray}%}{%为标识符,项目在%s中]