Hàm array_udiff() của PHP

Mô hình

So sánh giá trị khóa của hai mảng (sử dụng hàm tùy chỉnh để so sánh giá trị khóa) và trả về集合:

<?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"=>"blue","b"=>"black","e"=>"blue");
$result=array_udiff($a1,$a2,"myfunction");
print_r($result);
?>

Chạy ví dụ

Định nghĩa và cách sử dụng

hàm array_udiff() được sử dụng để so sánh giá trị khóa của hai (hoặc nhiều) mảng và trả về集合.

Ghi chú:Ghi chú: hàm này sử dụng hàm tùy chỉnh để so sánh giá trị khóa!

hàm này so sánh giá trị khóa của hai (hoặc nhiều) mảng và trả về một mảng集合, chứa tất cả các giá trị trong các mảng được so sánh (array1nào, nhưng không có trong bất kỳ tham số mảng nào khác (array2 hoặc array3 v.v.) của khóa.

Giải thích

hàm array_udiff() trả về một mảng chứa tất cả các giá trị trong các mảng được so sánh, nhưng không có trong bất kỳ mảng tham số nào khác, và tên khóa được giữ nguyên.

hàm array_udiff() và array_diff() hàm có hành vi khác nhau,后者 sử dụng hàm nội bộ để so sánh.

so sánh dữ liệu được thực hiện bằng hàm array_udiff() của myfunction được thực hiện.myfunction hàm có hai tham số cần so sánh. Nếu tham số đầu tiên nhỏ hơn tham số thứ hai, hàm sẽ trả về một giá trị âm, nếu hai tham số bằng nhau, thì trả về 0, nếu tham số đầu tiên lớn hơn tham số thứ hai, thì trả về một giá trị dương.

cú pháp

array_udiff(array1,array2,array3...myfunction)
Tham số Mô tả
array1 Bắt buộc. Mảng đầu tiên được so sánh với các mảng khác.
array2 Bắt buộc. Mảng được so sánh với mảng đầu tiên.
array3,... Tùy chọn. Các mảng khác được so sánh với mảng đầu tiên.
myfunction

Bắt buộc. Giá trị chuỗi, định nghĩa hàm có thể gọi.

Nếu tham số đầu tiên nhỏ hơn hoặc bằng lớn hơn tham số thứ hai, hàm so sánh phải trả về một số nguyên nhỏ hơn hoặc bằng lớn hơn 0.

Chi tiết kỹ thuật

Trả về giá trị: Trả về mảng khác biệt, mảng này chứa tất cả các phần tử trong các mảng được so sánh (array1nào, nhưng không có trong bất kỳ tham số mảng nào khác (array2 hoặc array3 v.v.) của khóa.
Phiên bản PHP: 5.1.0+

Các ví dụ khác

Ví dụ 1

So sánh giá trị khóa của ba mảng (sử dụng hàm so sánh tùy chỉnh của người dùng) và trả về tập hợp khác biệt:

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

Chạy ví dụ