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中]