$array1 = array( [0] => 2 [1] => 3 [2] => 5 [3] => 6 [4] => 7 [5] => 8 [6] => 9 ) ;
$array2 = array( ( [0] => Array (...) [1] => Array (...) [2] => Array (...) ... [6] => Array (...));
它们具有相同数量的元素。我希望array2具有array1的值作为键。
应该成为:
$array2 = array( ( [2] => Array (...) [3] => Array (...) [5] => Array (...) ... [9] => Array (...));
我已编写此代码,但我不知道为什么它只返回array2的一部分。
reset($array1);reset($array2);
foreach ($array2 as $k => $v) {
unset ($array2[$k]);
$new_key = current($array1);
next($array1);
$array2[$new_key] = $v;
}
print_r($array2);
提前致谢。
答案 0 :(得分:2)
使用array_combine
创建一个对象,其中包含来自一个数组的键,以及来自另一个数组的值。
$array_1 = array ('hello','world','stackoverflow');
$array_2 = array (
array ('greetings'),
array ('planet'),
array ('websitefilledwithgeeks')
);
print_r (
array_combine ($array_1, $array_2)
);
输出
Array
(
[hello] => Array
(
[0] => greetings
)
[world] => Array
(
[0] => planet
)
[stackoverflow] => Array
(
[0] => websitefilledwithgeeks
)
)