php数组操作追加元素

时间:2012-12-27 12:38:57

标签: php arrays

我有一个小问题即时创建多表而且卡住了, 我想创建这样的东西:

1 table: [4,5,6]
2 table: [7,2,7,8]
3 table: [1,1,1]
4 table: [6,0,9]

但每张桌子的尺寸可以不同,
预期结果:

[[4,7,1,6], [5,2,1,0], [6,7,1,9], [8]] 

我试图使用for循环但到目前为止没有成功?

数组应该以这种方式构建:
第一个元素是所有t1 [0] + t2 [0] + t3 [0] ...
的集合 第二个元素是所有t1 [1] + t2 [1] + t3 [1] ...的集合 ... 等等

2 个答案:

答案 0 :(得分:4)

$result = array();
foreach ([[4,5,6], [7,2,7,8], [1,1,1], [6,0,9]] as $key => $value) {
    foreach($value as $key2 => $value2) {
        $result[$key2][$key] = $value2;
    }
}

var_dump($result);

答案 1 :(得分:0)

$result = array();
foreach (array(array(4,5,6), array(7,2,7,8), array(1,1,1), array(6,0,9)) as $k1 => $v1) {
    foreach($v1 as $k2 => $v2){
        if(!isset($result[$k2])){
            $result[$k2] = array();
        }
        $result[$k2][] = $v2;
    }
}

//output: [[4,7,1,6],[5,2,1,0],[6,7,1,9],[8]]

以下是演示:http://codepad.org/lxJt4zOp