获取输入值数组:复选框


Getting value array on input:chechbox

为什么在以下PHP代码输出var_dump的复选框($service_un)在偏移量[1]是空的?

此变量($service_un)在以下HTML代码中获得值checkbox_un作为数组,但不知道为什么在输出var_dump上偏移量[1]值input:name="checkbox_un[1][]"为空。怎样才能解决这个问题?

array(2) {
    [0] = > array(2) {
        [0] = > string(7)"Minibar" [1] = > string(12)"Teahouse"
    }[1] = > array(2) {
        [0] = > string(0)"" [1] = > string(0)""
    }
}

代码:

<input type="text" name="name_un[]" value="jack">
<input type="checkbox" name="checkbox_un[0][]" value="Minibar">
<input type="checkbox" name="checkbox_un[0][]" value="Teahouse">
<input type="text" name="name_un[]" value="jim">
<input type="checkbox" name="checkbox_un[1][]" value="Television">
<input type="checkbox" name="checkbox_un[1][]" value="Foreign">
<?php
$name_un        = $this->input->post('name_un');
$service_un     = $this->input->post('checkbox_un');
var_dump($service_un); // This output
?>

复选框的值只有在复选框被选中(复选标记被设置)的情况下才会被设置(为HTML输入标签中的值)。

只要没有,就不会设置偏移量。