php-提取数组值的问题

php-提取数组值的问题,php,arrays,Php,Arrays,我正在$postdata变量中获取所有HTML post值 $postdata = $this->input->post(); unset($postdata['submit']); unset($postdata['valve_no']); $postdata的输出: Array ( [1] => Array ( [0] => BH123 [1] => H89 ) [2] => Array

我正在
$postdata
变量中获取所有HTML post值

$postdata = $this->input->post();
unset($postdata['submit']);
unset($postdata['valve_no']);
$postdata的输出

Array ( 
    [1] => Array ( 
        [0] => BH123 
        [1] => H89 
    ) 
    [2] => Array ( 
        [0] => BH123 
        [1] => H89 
    ) 
    [3] => Array ( 
        [0] => BH123 
        [1] => H89 
    ) 
    [4] => Array ( 
        [0] => BH123 
    )
)


$valve_no=$this->input->post('valve_no');
$valve\u no
的输出:

Array ( 
    [0] => 1 
    [1] => 2 
    [2] => 3 
    [3] => 4 
)
接下来,我尝试合并两个数组

foreach($postdata as $key => $val) 
{
    $dataSet[] = array ('valve_no'=>$valve_no[$key-1],$postdata[$key]);
} 
print_r($dataSet);
$dataSet的输出

Array ( 
    [0] => Array ( 
        [valve_no] => 1 
        [0] => Array ( 
            [0] => BH123 
            [1] => H89 
        ) 
    ) 
    [1] => Array ( 
        [valve_no] => 2 
        [0] => Array ( 
            [0] => BH123 
            [1] => H89 
        ) 
    ) 
    [2] => Array ( 
        [valve_no] => 3 
        [0] => Array ( 
            [0] => BH123 
            [1] => H89 
        ) 
    ) 
    [3] => Array ( 
        [valve_no] => 4 
        [0] => Array ( 
            [0] => BH123 
        ) 
    ) 
)
我期望的输出如下:

Array ( 
        [0] => Array ( 
            [valve_no] => 1 
            [1] => BH123 
            [2] => H89 
        ) 
        [1] => Array ( 
            [valve_no] => 2 
            [1] => BH123 
            [2] => H89 
        ) 
        [2] => Array ( 
            [valve_no] => 3 
            [1] => BH123 
            [2] => H89 
        ) 
        [3] => Array ( 
            [valve_no] => 4 
            [1] => BH123 
        ) 
    ) 
)
正如您在预期输出中看到的,我想提取子数组,需要从
[1]
开始,而不是从
[0]
开始

提前感谢。

只需更改
foreach()
如下代码:(根据您的评论)

输出:

注意:如果
$postdata
子数组索引不是以0,1,2开头。。。你仍然希望他们从1,2开始,。。。在您的结果中,然后执行以下操作:

foreach($postdata as $key => $val) 
{
    
    $dataSet[$key-1]['valve_no'] = $valve_no[$key-1];
    $srNo = 1;
    foreach($val as $v){
        $dataSet[$key-1][$srNo] =$v;
        $srNo++;
    }
}

输出:

谢谢您的回答。让我来实施并让你知道。@你好,很高兴帮助你
foreach($postdata as $key => $val) 
{
    
    $dataSet[$key-1]['valve_no'] = $valve_no[$key-1];
    $srNo = 1;
    foreach($val as $v){
        $dataSet[$key-1][$srNo] =$v;
        $srNo++;
    }
}