multiDimensional Array需要as

时间:2012-05-15 14:57:20

标签: php arrays

下面的实际数组基本上是$ _POST的数组。 人们可以理解表格中的内容。三个控件具有相同的名称不同的值。我需要的是在这个阵列下面。

Array
(
    [mytext] => Array
        (
            [0] => aaaa
            [1] => bbbb
            [2] => ddd
        )

    [mysel] => Array
        (
            [0] => one
            [1] => two
            [2] => two
        )

    [submit] => Submit
)

我需要下面的行格式的数组,但是基于$ _POST数据是动态的。

Array
(
    [0] => Array
        (
            [0] => aaaa
            [1] => one

        )

    [1] => Array
        (
            [0] => bbbb
            [1] => two

        )

    [2] => Array
        (
            [0] => dddd
            [1] => two

        )


)

3 个答案:

答案 0 :(得分:1)

试试这个:

$out = Array();
foreach($_POST['mytext'] as $k=>$v) {
    $out[$k] = Array($v,$_POST['mysel'][$k]);
}
var_dump($out);

答案 1 :(得分:1)

// Code To Get controls value in row wise
$count=0;
foreach($_POST as  $key=>$val){
    foreach($_POST[$key] as $val2){
        $row[$count][]=$val2;
        $count++;
    }
    $count=0;
}
print_r($row);

答案 2 :(得分:0)

循环遍历其中一个字段,然后从另一个字段中提取相应的值。

$result = array();
foreach($_POST['mytext'] as $k=>$v){
    $result[] = array($v, $_POST['mysel'][$k]);
}

您也可以使用array_map执行此操作:

// PHP 5.3+
$result = array_map(function($a, $b){
    return array($a, $b);
}, $_POST['mytext'], $_POST['mysel']);

// PHP <= 5.2
$result = array_map(create_function('$a,$b', 'return array($a,$b);'), $_POST['mytext'], $_POST['mysel']);