0
我有这个数组(见下文),我想重复每个数组有一个键“重复”与代表多少次重复的值。在数组中重复显示:重复输出该元素
$fields = array(
array(
'type' => 'title-wrap',
'holder' => 'h4',
'heading' => 'Test heading',
),
array(
'repeat' => 3,
'type' => 'radio',
'name' => 'specific_name',
'value' => array(
0 => 'First', // value for first repeat
1 => 'Second', // value for second repeat
2 => 'Third' // value for third repeat
),
)
);
对于我创建generateForm
名为递归函数:
function generateForm($fields, $index = 0) {
if ($fields == '') { return false; }
foreach ($fields as $field) {
if (isset($field['type'])) {
switch ($field['type']) {
case 'title-wrap':
echo $field['heading'];
break;
case 'radio':
echo $field['value'][$index];
break;
}
}
if (isset($field['repeat'])) {
for ($i=0; $i < $field['repeat']-1; $i++) {
generateForm($field, $i);
}
}
}
}
输出我想:
测试标题
首先
二
三
但我没有得到输出中的最后两个单词。我究竟做错了什么?
能否downvoter请小心发表评论。 – Oli