如何将此表单结构转换为
PHP数组?我也可以编辑HTML,所以每个想法都很好……
如果选中了复选框,则此数据将通过保存推送到PHP数组中,所需的结构为:
0 =>
'group' => 'group_a',
'type' => 'type_yellow',
'desc' => 'now to convert'
1 =>
'group' => 'group_b',
'type' => 'type_orange',
'desc' => 'needed to order'
作为示例,我尝试的是通过输入元素名称作为数组,如description [],但我无法控制是否选中了复选框…
最佳答案 嗯.对于复选框,标准行为是仅在选中复选框时才发送值.因此,服务器端解决方案可能是:
首先,将输入字段命名如下:
>条目[] [组]
>条目[] [类型]
>条目[] [desc]
或者,或者
>条目[0] [组]
>条目[0] [类型]
>条目[0] [desc]
>条目[1] [组]
>条目[1] [类型]
>条目[1] [desc]
>等等….
如果您使用POST方法,这些值将作为$_POST [entries]中的数组提供.
$entries = $_POST['entries'];
现在,我们需要过滤掉未选中相应复选框的条目.我们可以使用array_filter:
$entries = array_filter($entries, function($entry) {
return isset($entry['group']);
});