将php数组转发到twig模板(Symfony)
我试图将我的数组从php转发(呈现)到twig模板,然后将模板中的所有内容打印出来。 我的问题是访问细枝模板中的数组 Php数组和呈现函数:将php数组转发到twig模板(Symfony),php,arrays,symfony,templates,twig,Php,Arrays,Symfony,Templates,Twig,我试图将我的数组从php转发(呈现)到twig模板,然后将模板中的所有内容打印出来。 我的问题是访问细枝模板中的数组 Php数组和呈现函数: while ( $row = mysqli_fetch_array ( $queryResult ) ) { $tplArray = array ( array ( 'id' => $row ['id']
while ( $row = mysqli_fetch_array ( $queryResult ) )
{
$tplArray = array (
array (
'id' => $row ['id']
),
array (
'name' => $row ['name']
)
);
$tplArray = array (
'id' => $row ['id'],
'name' => $row ['name']
);
}
return $this->render ( 'work/work.html.twig', array (
'data' => $tplArray
) );
{% for entry in data %}
{{ entry.id }}
{{ entry.name }}
{% endfor %}
尝试访问细枝模板中的数组:
while ( $row = mysqli_fetch_array ( $queryResult ) )
{
$tplArray = array (
array (
'id' => $row ['id']
),
array (
'name' => $row ['name']
)
);
$tplArray = array (
'id' => $row ['id'],
'name' => $row ['name']
);
}
return $this->render ( 'work/work.html.twig', array (
'data' => $tplArray
) );
{% for entry in data %}
{{ entry.id }}
{{ entry.name }}
{% endfor %}
这显然行不通。
如何从我的$tplArray中获取数据(id、名称)并在模板中打印出来?您的
循环应如下所示:
$tplArray = array();
while ( $row = mysqli_fetch_array ( $queryResult ) )
{
$tplArray[] = array (
'id' => $row ['id'],
'name' => $row ['name']
);
}
使用此代码,首先为$tplArray
分配一个空数组(作为预防措施)。然后,使用[]
操作符,在的每个步骤中推送一个新元素,即具有“id”和“name”属性的关联数组,同时循环到这个结果数组中
当前,在的每个步骤中,您都会将一个新数组重新指定为$tplArray
值,而不是值。请考虑将第一个tplArray重命名为类似于$rows的名称,然后将$tplArray=['data'=>$rows];对两个完全不同的数组使用相同的名称会使事情变得更加混乱。此外,$rows=mysqli\u fetch\u all($queryResult)将完全消除第一个循环。