ฟังก์ชัน array_merge_recursive() จะรวมอาร์เรย์ตั้งแต่หนึ่งอาร์เรย์ขึ้นไปเป็นอาร์เรย์เดียวแบบเรียกซ้ำ ความแตกต่างระหว่างฟังก์ชันนี้กับ array_merge() คือถ้าองค์ประกอบตั้งแต่สององค์ประกอบขึ้นไปมีคีย์เดียวกัน ฟังก์ชัน array_merge_recursive() จะสร้างค่าเป็นอาร์เรย์ ในกรณีนี้ ฟังก์ชัน array_merge() จะถือเป็นอันสุดท้าย
ไวยากรณ์
array_merge_recursive(arr1, arr2, arr3, …)
พารามิเตอร์
-
arr1 − อาร์เรย์เริ่มต้นที่จะผสาน
-
arr2 − อาร์เรย์อื่น
-
arr3 − อาร์เรย์อื่น
คืนสินค้า
ฟังก์ชัน array_merge_recursive() ส่งคืนอาร์เรย์ที่รวมองค์ประกอบของอาร์เรย์ทั้งหมดที่ส่งผ่านในพารามิเตอร์เข้าด้วยกัน
ต่อไปนี้คือตัวอย่างที่ผสานสองอาร์เรย์กับคีย์ที่ซ้ำกันในอาร์เรย์ที่สอง ในกรณีนี้ ฟังก์ชัน array_merge_recursive() จะสร้างค่าเป็นอาร์เรย์
ตัวอย่าง
<?php $arr1 = array("p"=>"one","q"=>"two"); $arr2 = array("q"=>"three","r"=>"four"); print_r(array_merge_recursive($arr1,$arr2)); ?>
ผลลัพธ์
Array ( [p] => one [q] => Array ( [0] => two [1] => three ) [r] => four )