-1

PHPに2つの配列があり、これら2つの配列の値を結合したい

これは私の最初の配列です

array (size=2)
  0 => 
    array (size=3)
      'Restaurant' => string 'Taj' (length=3)
      'TableNo' => string '1' (length=1)
      'Status' => string 'Occupied' (length=8)
  1 => 
    array (size=3)
      'Restaurant' => string 'Taj' (length=3)
      'TableNo' => string '2' (length=1)
      'Status' => string 'Vacant' (length=6)

これは私の2番目の配列です

array (size=2)
  0 => 
    array (size=1)
      'MenuGrp' => string 'Deserts' (length=7)
  1 => 
    array (size=1)
      'MenuGrp' => string 'Snacks' (length=6)

これらの配列を最終的な配列に結合したい

array (size=2)
  0 => 
    array (size=3)
      'Restaurant' => string 'Taj' (length=3)
      'TableNo' => string '1' (length=1)
      'Status' => string 'Occupied' (length=8)
      'MenuGrp' => string 'Snacks' (length=6)
  1 => 
    array (size=3)
      'Restaurant' => string 'Taj' (length=3)
      'TableNo' => string '2' (length=1)
      'Status' => string 'Vacant' (length=6)
      'MenuGrp' => string 'Deserts' (length=7)

この配列を取得する方法を教えてください。

4

4 に答える 4

0
$resultsarray = array_merge($array1,$array2);
于 2013-10-30T08:27:52.270 に答える
0

array_merge または array_combine 関数を試すことができます。

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

print_r($c);
?> 


<?php
$array1 = array("color" => "red", 2, 4);
$array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4);
$result = array_merge($array1, $array2);
print_r($result);
?>
于 2013-10-30T08:28:38.980 に答える
0

array_merge_recursive()キーは整数であるため、このインスタンスでは機能しません。それらが文字列である場合にのみ機能します。これを実現する最も簡単な方法は、配列の 1 つをループし、2 番目の配列にキーが存在するかどうかを確認し、存在する場合は 2 つを結合することです。

$output = array();
foreach ($array1 as $key => $arr) {
  if (!empty($array2[$key])) {
    $output[$key] = array_merge($arr, $array2[$key]);
  }
}

どちらが出力されますか ( var_dump($output)):

array
  0 => 
    array
      'Restaurant' => string 'Taj' (length=3)
      'TableNo' => int 1
      'Status' => string 'Occupied' (length=8)
      'MenuGrp' => string 'Deserts' (length=7)
  1 => 
    array
      'Restaurant' => string 'Taj' (length=3)
      'TableNo' => int 2
      'Status' => string 'Vacant' (length=6)
      'MenuGrp' => string 'Snacks' (length=6)
于 2013-10-30T09:48:16.943 に答える
-1
$array_combined = array_merge_recursive($array_one, $array_two);

ここを参照してください配列マージ再帰

于 2013-10-30T08:27:59.863 に答える