ฟังก์ชัน 'array_map' ส่งค่าของทุกองค์ประกอบในอาร์เรย์ไปยังฟังก์ชันที่ผู้ใช้กำหนด มันคืนอาร์เรย์พร้อมค่าใหม่ เนื่องจากเรียกฟังก์ชันที่ผู้ใช้กำหนดบนอาร์เรย์
ไวยากรณ์ของฟังก์ชัน array_map
array_map ( user-defined function, array_1, array_2, array_3...)
ฟังก์ชันที่ผู้ใช้กำหนดและ array_1 เป็นอาร์กิวเมนต์บังคับ แต่ array_2 และ array_3 เป็นทางเลือก
ตัวอย่าง
$result = array( 0=>array('a'=>1,'b'=>'Hello'), 1=>array('a'=>1,'b'=>'duplicate_val'), 2=>array('a'=>1,'b'=>'duplicate_val') ); $unique = array_map("unserialize", array_unique(array_map("serialize", $result))); print_r($unique);ผลลัพธ์
จะได้ผลลัพธ์ดังนี้:
Array ( [0] => Array ( [a] => 1 [b] => Hello ) [1] => Array ( [a] => 1 [b] => duplicate_val ) )
ในโค้ดข้างต้น กำหนดอาร์เรย์ 3 องค์ประกอบและกำหนดให้ตัวแปร 'result' ฟังก์ชัน array_map ถูกเรียกและค่า 'result' ส่งเป็นพารามิเตอร์
ผลลัพธ์ที่ได้จะเป็นเนื้อหาในตัวแปร 'result' พร้อมระบุค่าซ้ำในอาร์เรย์