ฟังก์ชัน array_uintersect() ใช้เปรียบเทียบ ค่า (values) ของอาร์เรย์ด้วยฟังก์ชันที่ผู้ใช้กำหนดเอง และส่งคืนอาร์เรย์ที่มีค่าที่ปรากฏในอาร์เรย์แรกและมีอยู่ในอาร์เรย์อื่นๆ ทุกอาร์เรย์
ไวยากรณ์ (Syntax)
array_uintersect(arr1, arr2, arr3, ..., compare_func)
พารามิเตอร์ (Parameters)
arr1 − อาร์เรย์แรกที่ต้องการเปรียบเทียบ
arr2 − อาร์เรย์ที่สองที่ต้องการเปรียบเทียบ
arr3, ... − อาร์เรย์เพิ่มเติม (ตัวเลือก)
compare_func − ฟังก์ชันเปรียบเทียบค่า ส่งคืนค่าตัวเลข: น้อยกว่า 0, เท่ากับ 0, มากกว่า 0
ค่าที่ส่งคืน (Return Value)
ส่งคืนอาร์เรย์ที่มีค่าจากอาร์เรย์แรกที่ปรากฏในทุกอาร์เรย์ที่เปรียบเทียบ
ตัวอย่างการใช้งาน
<?php
function compare_func($a, $b) {
if ($a === $b) return 0;
return ($a > $b) ? 1 : -1;
}
$arr1 = array("p" => "one", "q" => "two", "r" => "three");
$arr2 = array("p" => "three", "q" => "four", "s" => "three");
$res = array_uintersect($arr1, $arr2, "compare_func");
print_r($res);
?>
ผลลัพธ์
Array ( [r] => three )