PHP array_diff_uassoc() ฟังก์ชัน

ตัวอย่าง

เปรียบเทียบชื่อกุญแจและค่าของอาเรย์สอง (ใช้ฟังก์ชันที่กำหนดโดยผู้ใช้เพื่อเปรียบเทียบชื่อกุญแจ) และกลับค่าตัวเลขที่เหลือ

<?php
function myfunction($a,$b)
{
if ($a===$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}
$a1=array("a"=>"red","b"=>"green","c"=>"blue");
$a2=array("d"=>"red","b"=>"green","e"=>"blue");
$result=array_diff_uassoc($a1,$a2,"myfunction");
print_r($result);
?>

ทดสอบการทำงาน

การกำหนดและการใช้งาน

ฟังก์ชัน array_diff_uassoc() ใช้เพื่อเปรียบเทียบชื่อกุญแจและค่าของอาเรย์สอง (หรือมากกว่าสอง) และกลับค่าตัวเลขที่เหลือ

หมายเหตุ:ฟังก์ชันนี้ใช้ฟังก์ชันที่กำหนดโดยผู้ใช้เพื่อเปรียบเทียบชื่อกุญแจ!

ฟังก์ชันนี้เปรียบเทียบชื่อกุญแจและค่าของอาเรย์สอง (หรือมากกว่าสอง) และกลับค่าอาเรย์ตัวเลขที่รวมถึงทุกช่วงที่มีในarray1แต่ไม่ได้มีในใดไหนของตัวแปรตัวอย่างarray2 หรือ array3 และอื่นๆ ของชื่อและค่าของกุญแจ

คำสั่ง

array_diff_uassoc(array1,array2,array3...myfunction);
ตัวแปร คำอธิบาย
array1 สำคัญ。อาเรย์แรกที่จะเปรียบเทียบกับอาเรย์อื่น
array2 สำคัญ。อาเรย์ที่จะเปรียบเทียบกับอาเรย์แรก
array3,... เลือกตั้ง。อาเรย์อื่นที่จะเปรียบเทียบกับอาเรย์แรก
myfunction สำคัญ。กำหนดชื่อฟังก์ชันที่สามารถเรียกใช้ได้เพื่อเปรียบเทียบค่าพิเศษ。ถ้าตัวเริ่มต้นเล็กกว่า เท่า หรือใหญ่กว่าตัวอื่น ฟังก์ชันต้องคืนค่าเลขจำนวนเต็มที่เล็กกว่า เท่า หรือใหญ่กว่า 0

รายละเอียด

array_diff_uassoc() ฟังก์ชันใช้คาลแบ็คฟังก์ชัน (callback) ที่กำหนดโดยผู้ใช้สำหรับตรวจสอบตัวแทนเพื่อคำนวณช่วงตัวเลขสองหรือหลายอาเรย์。กลับค่าคืออาเรย์ที่รวมถึงรายการที่มีใน array1 ค่าที่มีในตัวแปรแต่ไม่มีในใดไหนของตัวแปรตัวอย่าง

แต่ต่างกับฟังก์ชัน array_diff() นั้น ชื่อแกนคำยังต้องเปรียบเทียบด้วย

เพราะตัวแปร myfunction คือฟังก์ชันที่กำหนดโดยผู้ใช้เพื่อเปรียบเทียบสองตัวแปร ฟังก์ชันนี้จำเป็นต้องมีสองอาทิตย์ คือชื่อแกนคำที่จะเปรียบเทียบ ดังนั้นจึงมีพฤติกรรมที่ตรงกันข้ามกับฟังก์ชัน array_diff_assoc() ซึ่งใช้ฟังก์ชันภายในเพื่อเปรียบเทียบ

ชื่อของกุญแจในตัวแปรที่กลับค่ามักจะไม่เปลี่ยนแปลง

รายละเอียดเทคนิค

กลับค่า กลับค่าตัวแปรความแตกต่าง ซึ่งประกอบด้วยข้อมูลทั้งหมดที่มีในตัวแปรที่เปรียบเทียบarray1แต่ไม่ได้มีในใดไหนของตัวแปรตัวอย่างarray2 หรือ array3 และอื่นๆ ของชื่อและค่าของกุญแจ
PHP รุ่น: 5+

ตัวอย่างเพิ่มเติม

ตัวอย่าง 1

เปรียบเทียบชื่อและค่าของกุญแจในตัวแปรแบบนี้ และกลับค่าความแตกต่าง (ใช้ฟังก์ชันที่กำหนดโดยผู้ใช้เพื่อเปรียบเทียบชื่อแกนคำ)

<?php
function myfunction($a,$b)
{
if ($a===$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}
$a1=array("a"=>"red","b"=>"green","c"=>"blue");
$a2=array("a"=>"red","b"=>"green","d"=>"blue");
$a3=array("e"=>"yellow","a"=>"red","d"=>"blue");
$result=array_diff_uassoc($a1,$a2,$a3,"myfunction");
print_r($result);
?>

ทดสอบการทำงาน