复选框加入数组处理


Checkbox into Array processing

>我有这种问题。在我的表单中,我将其作为复选框:

<input type="checkbox" name="access[1]" value="E01">Highway 1<br><br>
<input type="checkbox" name="access[1][]" value="C001" >&nbsp;C001<br>
<input type="checkbox" name="access[1][]" value="C002" >&nbsp;C002
<br>
<br>
<input id="access[2]" type="checkbox" name="access[2]" value="E03">Highway 2<br><br>
<input id="access[2]" type="checkbox" name="access[2][]" value="XXXX">&nbsp;XXXX
<br>
<br>
<input id="access[3]" type="checkbox" name="access[3]" value="E05">Highway 3<br><br>
<input id="access[3]" type="checkbox" name="access[3][]" value="XXXX">&nbsp;XXXX<br>
<br>

在我的PHP代码中,我得到了这个:

foreach ($_POST ["access"] as $id => $subs) {       
    foreach ($subs as $sub) {
        $subcategory = $sub;
        echo "<p>".$id." - ".$subs." - ".$subcategory."</p>";
    }
}

结果在某种程度上是这样的:

http://s12.postimage.org/f2xi0yz4p/data4.png

您看到的数组应该是表单中的值吧?像"E01"/"E03"/"E05"。我怎样才能使"数组"一词成为主要类别?

预期的输出应该类似于这样:

1 - E01 - C0001
2 - E01 - C0002
3 - E03 - XXXX
4 - E05 - XXXX

谢谢

您需要

access[1]重命名,并将access[2]重命名为以下内容: access[1][id] access[2][id] as access[1]/access[2] 通过以下输入自动转换为数组。

然后,您可以访问这些变量:

foreach ($_POST ["access"] as $id => $subs) {       
    foreach ($subs as $key=>$sub) {
        if($key!='id'){
            $subcategory = $sub;
            echo "<p>".$id." - ".$subs['id']." - ".$subcategory."</p>";
        }
    }
}