ฟังก์ชัน array_intersect_ukey
ฟังก์ชัน array_intersect_ukey รับอาร์เรย์หลายๆ อาร์เรย์และ callback ฟังก์ชันสำหรับเปรียบเทียบคีย์ของอาร์เรย์เหล่านั้น พารามิเตอร์แรกส่งผ่านอาร์เรย์หลัก และพารามิเตอร์ต่อๆ มาส่งผ่านอาร์เรย์สำหรับการเปรียบเทียบ พารามิเตอร์สุดท้ายส่งผ่าน callback ฟังก์ชัน ซึ่งควรจะเปรียบเทียบคีย์และส่งคืนจำนวนเต็ม (น้อยกว่า, เท่ากับ หรือมากกว่าศูนย์)
ไวยากรณ์
array_intersect_ukey(array $array1, array $array2, ..., callable $key_compare_func): array
ตัวอย่าง
เปรียบเทียบคีย์ของสองอาร์เรย์ด้วยฟังก์ชันที่ผู้ใช้กำหนด:
<?php
$array1 = ['a' => 1, 'b' => 2, 'c' => 3];
$array2 = ['a' => 4, 'c' => 5, 'd' => 6];
$res = array_intersect_ukey($array1, $array2, function($key1, $key2) {
return strcmp($key1, $key2);
});
print_r($res);
?>
ผลลัพธ์จากการรันโค้ด:
['a' => 1, 'c' => 3]
ตัวอย่าง
การเปรียบเทียบคีย์ของสามอาร์เรย์ด้วยความไวต่อตัวพิมพ์ใหญ่-เล็ก:
<?php
$array1 = ['A' => 1, 'B' => 2, 'C' => 3];
$array2 = ['a' => 4, 'B' => 5, 'C' => 6];
$array3 = ['A' => 7, 'B' => 8, 'c' => 9];
$res = array_intersect_ukey($array1, $array2, $array3, function($key1, $key2) {
return strcmp($key1, $key2);
});
print_r($res);
?>
ผลลัพธ์จากการรันโค้ด:
['B' => 2]
ดูเพิ่มเติม
-
ฟังก์ชัน
array_intersect,
ซึ่งคำนวณหาส่วนตัดของอาร์เรย์ตามค่า -
ฟังก์ชัน
array_intersect_key,
ซึ่งคำนวณหาส่วนตัดของอาร์เรย์ตามคีย์ -
ฟังก์ชัน
array_uintersect,
ซึ่งคำนวณหาส่วนตัดของอาร์เรย์ด้วย callback ฟังก์ชันสำหรับเปรียบเทียบค่า