2016-07-29 18 views
0

私はこのように2つの配列を持っています。それは私にこのような結果が得られますように、新しい配列$結果に$ result_1と$ result_2を結合する方法PHPで同じキーを使って2つの配列を結合する

$result_1 = array(
 
[0] => array ("id" => "a1", "label" => "A1"), 
 
[1] => array ("id" => "a2", "label" => "A2")); 
 

 
$result_2 = array(
 
[0] => array ("id" => "b1", "label" => "B1"));

$result = array(
 
[0] => array ("id" => "a1", "label" => "A1"), 
 
[1] => array ("id" => "a2", "label" => "A2"), 
 
[2] => array ("id" => "b1", "label" => "B1"));

私は$result = array_merge($result_1,$result_2)を使用している場合は、それだけで1インデックスを返します。 $result = array($result_1,$result_2)を使用している場合は、2つのインデックスのみが返されます。すべてのインデックスを返すようにします。ありがとう、ありがとう。

+2

使用 '$結果= $ result_1 + $ result_2' – jitendrapurohit

+0

は、あなたが(array_valuesを試してみる変える心に留めておきますか?これはあなたのインデックスをリセットします –

+0

@ jitendrapurohitは機能しませんでした。 1つのインデックスしか返しませんでした。 –

答えて

1

array_pushと組み合わせたresult_2変数に配列があるので、array_walkを使用してください。それは仕事をしていませんが、それは)最初の配列http://php.net/manual/en/function.array-push.php

$result_1 = array(
    0 => array ("id" => "a1", "label" => "A1"), 
    1 => array ("id" => "a2", "label" => "A2") 
); 

$result_2 = array(
    0 => array ("id" => "b1", "label" => "B1") 
); 

array_walk($result_2, function($item) use (&$result_1) { 

    array_push($result_1, $result_2); 
}); 
print_r($result_1); 

Array ( 
    [0] => Array ([id] => a1 [label] => A1) 
    [1] => Array ([id] => a2 [label] => A2) 
    [2] => Array ([id] => b1 [label] => B1) 
) 
関連する問題