PHP - 将两个数组(相同长度)合并为一个关联?

时间:2009-07-29 14:56:28

标签: php arrays merge associative-array

实际上非常直截了当的问题..

  

在PHP中是否可以将两个长度相同的独立数组合并到一个关联数组中,其中第一个数组的值用作关联数组中的键?

我当然可以做到这一点,但我正在寻找另一个(内置)功能,或更有效的解决方案..?

function Combine($array1, $array2) {
    if(count($array1) == count($array2)) {
        $assArray = array();
        for($i=0;$i<count($array1);$i++) {
            $assArray[$array1[$i]] = $array2[$i];
        }
        return $assArray;
    }
}

4 个答案:

答案 0 :(得分:53)

array_combine($keys, $values)

PS:点击我的回答!它也是一个链接!

答案 1 :(得分:9)

您需要array_combine

<?php
$a = array('green', 'red', 'yellow');
$b = array('avocado', 'apple', 'banana');
$c = array_combine($a, $b);

print_r($c);
?>

答案 2 :(得分:4)

已经有array_combine function

$combined = array_combine($keys, $values);

答案 3 :(得分:2)

大家好我将向您展示如何在一个阵列中合并2个阵列

我们有2个数组,我将从中生成一个数组

 $data_key  = array('key1','key2');
 $data_value = array('val1','val2');

让我们声明主数组

$main_array = array();

现在让我们用2个阵列填充它

foreach ($data_key as $i => $key) {
         $main_array[$key] = $data_value[$i];
}

现在让我们使用var_dump($main_array);

查看结果
array(2) { 
["key1"]=> string(4) "val1"
["key2"]=> string(4) "val2" 
}

我希望可以帮助某人:)