我不明白如何组合这些数组。
$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),
)
这应该适合您:
<?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 )
)
使用自
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
的解决方案(它只需多一点代码即可执行相同的操作。