我在PHP中有以下两个数组,它们代表大气气体及其成分:
Array
(
[0] => nitrogen
[1] => argon
[2] => oxygen
[3] => carbon dioxide
)
Array
(
[0] => 78
[1] => 1
[2] => 21
[3] => 0
)
是否有一种优雅的方式来获得以下数组,即键和值的组合:
Array
(
"nitrogen" => 78
"argon" => 1
"oxygen" => 21
"carbon dioxide" => 0
)
我能想到的方法涉及循环,我不知道我是否使它变得复杂。有一个简单的方法吗?
答案 0 :(得分:2)
array_combine()
,简化:
$new_arr = array_combine($keys,$values);
答案 1 :(得分:1)
信不信由你 - array_combine()
存在且完全您正在寻找的东西!
http://php.net/manual/en/function.array-combine.php
array_combine - 使用一个数组来创建一个数组 另一个是它的价值
从以上链接改编的示例 -
$a = array('Stack', 'Server', 'Super');
$b = array('Overflow', 'Fault', 'User');
$c = array_combine($a, $b);
print_r($c);
Array
(
[Stack] => Overflow
[Server] => Fault
[Super] => User
)
答案 2 :(得分:1)
$key = array('nitrogen', 'argon', 'oxygen', 'carbon dioxide');
$values = array(78, 1, 21, 0 );
$return = array_combine($key, $values);
print_r($return);
输出:
Array
(
[nitrogen] => 78
[argon] => 1
[oxygen] => 21
[carbon dioxide] => 0
)
答案 3 :(得分:1)
array_combine()示例:
<?php
print_r(array_combine(Array('a','a','b'), Array(1,2,3)));
?>
返回: 排列 ( [a] =&gt; 2 [b] =&gt; 3 )
如果两个键相同,则第二个键占优势。