0

我有一个 php 循环,其中包含使用 , 在循环中的计数,我想在下面添加代码,但在&$counter++末尾回显计数器。我怎样才能做到这一点?$QuestionCheckboxGroup

$Question = $_POST["CheckboxGroup"];

所以每次它循环时都会创建这样的东西:

$Question1 = $_POST["CheckboxGroup1"];
$Question2 = $_POST["CheckboxGroup2"];
$Question3 = $_POST["CheckboxGroup3"];
$Question4 = $_POST["CheckboxGroup4"];
$Question5 = $_POST["CheckboxGroup5"];
4

3 回答 3

4

不要这样做。相反,创建一个数组:

foreach ($_POST['CheckboxGroup'] as $cg) {
   $Question = $cg;
}

在您的 HTML 标记中,您可以像这样创建数组值:

<input type='checkbox' name='CheckboxGroup[]' />
<input type='checkbox' name='CheckboxGroup[]' />
<input type='checkbox' name='CheckboxGroup[]' />

当 PHP 接收到它们时,它们将显示为一个数字索引数组,您可以像我上面那样循环它。如果你想明确数组索引,你也可以这样做:

<input type='checkbox' name='CheckboxGroup[item1]' />
<input type='checkbox' name='CheckboxGroup[item2]' />
<input type='checkbox' name='CheckboxGroup[item3]' />

通过以下方式在 PHP 中访问:

$_POST['CheckboxGroup]['item2']
于 2012-09-30T20:13:51.683 回答
2

不要使用带有索引的变量作为变量名的一部分。这就是数组的用途。

$Question[$counter] = $_POST['CheckboxGroup'.$counter];
于 2012-09-30T20:13:25.143 回答
2

虽然你可以做类似的事情

$cnt = 1;
$${'Question' . $cnt} = $_POST['Checkboxgroup' . $cnt];

这变得非常丑陋非常快。最好使用 PHP 对表单字段名称的数组支持:

<input type="checkbox" name="checkboxgroup[]" value="..." />

$questions[1] = $_POST['checkboxgroup'][1];
于 2012-09-30T20:14:07.560 回答