web-dev-qa-db-ja.com

PHP-2つの配列(同じ長さ)を1つの結合にマージしますか?

実際にはかなり簡単な質問です。

PHPで、同じ長さの2つの別々の配列を1つの連想配列に結合して、最初の配列の値を連想配列のキーとして使用することは可能ですか?

もちろんこれを行うこともできますが、別の(組み込みの)関数、またはより効率的なソリューションを探しています。

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;
    }
}
23
Ropstah

array_combine($keys, $values)

PS:私の答えをクリックしてください!それもリンクです!

57
Tyler Carter

array_combine が必要です。

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

print_r($c);
?>
9
OneOfOne

すでに array_combine関数

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

みなさん、こんにちは。2つの配列を1つの配列にマージする方法を紹介します

2つの配列があり、それらから1つの配列を作成します

_ $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" 
}
_

私はそれが誰かを助けることができることを願っています:)

2
elaz