Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

ฟังก์ชัน array_udiff_uassoc() ใน PHP

คำอธิบาย

ฟังก์ชัน array_udiff_uassoc() คำนวณ difference (ความต่าง) ของอาร์เรย์โดยเปรียบเทียบคีย์และค่าทั้งคู่ด้วยฟังก์ชัน callback แยกกัน

รูปแบบการใช้งาน (Syntax)

array_udiff_uassoc(arr1, arr2, ..., key_compare_func, value_compare_func)

พารามิเตอร์

  • arr1 — อาร์เรย์แรก (ฐานเปรียบเทียบ)
  • arr2 — อาร์เรย์ที่สอง
  • ... — อาร์เรย์เพิ่มเติม
  • key_compare_func — callback เปรียบเทียบคีย์
  • value_compare_func — callback เปรียบเทียบค่า

ค่าที่คืนกลับ

คืนค่าอาร์เรย์จาก arr1 ที่ไม่มีในอาร์เรย์อื่น (เปรียบเทียบคีย์และค่า)

ตัวอย่างการใช้งาน

<?php
function key_compare($a, $b) {
    if ($a === $b) return 0;
    return ($a > $b) ? 1 : -1;
}

function val_compare($a, $b) {
    if ($a === $b) return 0;
    return ($a > $b) ? 1 : -1;
}

$arr1 = array("a" => "laptop", "b" => "keyboard", "c" => "mouse");
$arr2 = array("a" => "laptop", "b" => "keyboard", "c" => "headphone");

$res = array_udiff_uassoc($arr1, $arr2, "key_compare", "val_compare");
print_r($res);
?>

ผลลัพธ์

Array
(
    [c] => mouse
)

คีย์ c เหมือนกันแต่ค่า mouse ต่างจาก headphone จึงอยู่ในผลลัพธ์