请仔细阅读,因为它甚至不容易解释。 我有一个包含具有相同名称的各种输入的表单。 这就是我将它们分组的原因,如下例所示:
<input class="" type="text" name="photoname[]"/>
<input class="" type="text" name="photodescription[]"/>
<input value="121001392" name="protagonist[][]" type="checkbox"/>
<input value="121001393" name="protagonist[][]" type="checkbox"/>
<input value="121001394" name="protagonist[][]" type="checkbox"/>
<input value="121001395" name="protagonist[][]" type="checkbox"/>
现在团队工作正常。
问题是复选框,因为那些应首先与其他输入字段的索引分组,然后具有自己的索引。这就是为什么对于beckboxes我尝试使用这样的双组[][]
但是给定的数组是错误的,并且复选框没有以正确的方式分组。
这是结果:
Array
(
[photoname] => Array
(
[0] => 8e98ee38864e74a9d5abf45edb263b8f
[1] => 16fb2761e8cbe6eb877b2af8a95441dd
)
[protagonist] => Array
(
[0] => Array
(
[0] => 121001392
)
[1] => Array
(
[0] => 121001393
)
[2] => Array
(
[0] => 121001394
)
[3] => Array
(
[0] => 121001395
)
)
[photodesc] => Array
(
[0] => example
[1] => example
)
)
但预期结果应如下:
Array
(
[photoname] => Array
(
[0] => 8e98ee38864e74a9d5abf45edb263b8f
[1] => 16fb2761e8cbe6eb877b2af8a95441dd
)
[protagonist] => Array
(
[0] => Array
(
[0] => 121001392
[1] => 121001393
)
[1] => Array
(
[0] => 121001394
[1] => 121001395
)
[photodesc] => Array
(
[0] => example
[1] => example
)
)
在预期结果中,第一个索引是表单中所有其他输入的索引,子索引是每个所选复选框的索引。通过这种方式,我能够循环数组并根据父索引分配选中的复选框...如何实现这一目标?
答案 0 :(得分:1)
当您在动态创建二维数组中的元素时,您获得的行为与使用[][]
时的预期完全匹配。如果您没有指定第一个索引,则每次都会自动为第一个索引创建一个新值。
如果您需要对这些值进行分组,则需要指定第一个索引
<input value="121001392" name="protagonist[0][]" type="checkbox"/>
<input value="121001393" name="protagonist[0][]" type="checkbox"/>
<input value="121001394" name="protagonist[1][]" type="checkbox"/>
<input value="121001395" name="protagonist[1][]" type="checkbox"/>
答案 1 :(得分:0)
<input class="" type="text" name="photoname[]"/>
<input class="" type="text" name="photodescription[]"/>
<input value="121001392" name="protagonist[0][]" type="checkbox"/>
<input value="121001393" name="protagonist[0][]" type="checkbox"/>
<input value="121001394" name="protagonist[1][]" type="checkbox"/>
<input value="121001395" name="protagonist[1][]" type="checkbox"/>
您需要为群组命名。 []
表示同一群组中的多个值。但是[][]
不起作用。必须是[group1][]
或[group2][]
。