我无法理解如何组合这些数组。
$data = array("a", "b", "c")
$array = array(0 => Array(1 , 2, 3), 1 => Array(4, 5, 6))
我尝试了不同的功能,例如合并,合并,地图..
结果必须是:
array(
'a' => array(1, 4),
'b' => array(2, 5),
'c' => array(3, 6),
)
答案 0 :(得分:3)
这应该适合你:
<?php
$data = array("a", "b", "c");
$array = array(array(1 , 2, 3), array(4, 5, 6));
$result = array();
foreach($data as $key => $value) {
foreach($array as $innerKey => $innerValue)
$result[$value][] = $innerValue[$key];
}
print_r($result);
?>
输出:
Array (
[a] => Array ( [0] => 1 [1] => 4 )
[b] => Array ( [0] => 2 [1] => 5 )
[c] => Array ( [0] => 3 [1] => 6 )
)
答案 1 :(得分:1)
使用自PHP 5.5以来可用的函数array_column()
的解决方案:
$data = array("a", "b", "c");
$array = array(0 => Array(1 , 2, 3), 1 => Array(4, 5, 6));
$result = array();
foreach($data as $i => $v) {
$result[$v] = array_column($array, $i);
}
如果您遇到以前的版本,请使用Rizier123
's solution(只需更多代码即可完成同样的操作。