PHP:form带有多个具有相同变量名的复选框:在结果数组中设置了哪些键?
假设我们有一个典型的HTML表单,其中包含多个具有相同变量名的复选框,将发送到PHP脚本:PHP:form带有多个具有相同变量名的复选框:在结果数组中设置了哪些键?,php,Php,假设我们有一个典型的HTML表单,其中包含多个具有相同变量名的复选框,将发送到PHP脚本: <INPUT TYPE=CHECKBOX NAME=camino[0] VALUE=1> <INPUT TYPE=CHECKBOX NAME=camino[1] VALUE=66> <INPUT TYPE=CHECKBOX NAME=camino[2] VALUE=77> <INPUT TYPE=CHECKBOX NAME=camino[3] VALUE=67&g
<INPUT TYPE=CHECKBOX NAME=camino[0] VALUE=1>
<INPUT TYPE=CHECKBOX NAME=camino[1] VALUE=66>
<INPUT TYPE=CHECKBOX NAME=camino[2] VALUE=77>
<INPUT TYPE=CHECKBOX NAME=camino[3] VALUE=67>
但有时我得到的数组确实设置了所有键,只有未标记的值设置为null:
Array (
[0] =>
[1] =>
[2] => 77
[3] =>
)
我有一个本地PHP5.4.45安装,第一件事发生在这里,第二件事发生在另一个带有5.4.16的测试服务器上。哪种行为是“正确的”?它是否依赖于某个INI设置?您可以使用数组过滤器
$array = array(
0 => 1,
1 => 0,
2 => 1,
3 => 0);
var_dump($array);
echo "<br>";
// Filtering the array
$result = array_filter($array);
var_dump($result);
$array=array(
0 => 1,
1 => 0,
2 => 1,
3 => 0);
变量转储($数组);
回声“
”;
//过滤阵列
$result=array\u filter($array);
var_dump($结果);
输出:
数组(2){[0]=>int(1)[2]=>int(1)}
我不能复制。你能给我们看一下你在PHP中使用的代码吗?对不起,代码真的很复杂,一堆堆的库堆在一起,写得不是很好。不管怎样,我终于设法用另一种方式调试了它。也许我应该结束这个问题?如果您仍然使用PHP5,我强烈建议您尽快升级。不再支持此版本。是的,如果问题不再可再现,您可以删除该问题。
$array = array(
0 => 1,
1 => 0,
2 => 1,
3 => 0);
var_dump($array);
echo "<br>";
// Filtering the array
$result = array_filter($array);
var_dump($result);