關於PHP將兩個二維數組合並的問題
阿新 • • 發佈:2019-01-07
例如,我們現在有兩個二維陣列:
第一個二維陣列:$first = array("0"=>array("a"=>'1',"b"=>2,"c"=>"3"),"1"=>array("a"=>'4',"b"=>5,"c"=>"6"),"2"=>array("a"=>'7',"b"=>8,"c"=>"9"))
第二個二維陣列:$second = array("0"=>array("d"=>'1',"e"=>2,"f"=>"3"),"1"=>array("d"=>'4',"e"=>5,"f"=>"6"),"2"=>array("d"=>'7',"e"=>8,"f"=>"9"))
通過array_merge函式,我們可以合併兩個二維數組合併為一個,一維陣列的鍵從0-5;
我們希望實現合併後的陣列一維陣列的鍵不會增加,原兩個陣列相同鍵的資料會合並,實現方法如:
$count = count($first);//獲取陣列的數量
下面是重點:通過迴圈將原兩個陣列相同鍵的資料合併:
for($i=0;$i<$count;$i++){
$all[$i] = array_merge($first[$i],$second[$i]);
}
我們會發現,var_dump($all)後,會發現新的二維陣列結構如下:$all = array(
"0"=>array("a"=>'1',"b"=>2,"c"=>"3"
"1"=>array("a"=>'4',"b"=>5,"c"=>"6","d"=>'4',"e"=>'5',"f"=>"6"),
"2"=>array("a"=>'7',"b"=>8,"c"=>"9","d"=>'7',"e"=>'8',"f"=>"9")
)