Instance
Compares the key names and key values of two arrays (using a user-defined function to compare key names) and returns the difference set:
<?phpfunction myfunction ($a, $b) {if ($a = = = $b) {return 0;} return ($a > $b) 1:-1;} $a 1=array ("a" and "Red", "B" and "Green", "C" and "Blue"), $a 2=array ("D" and "Red", "b" = "green", "e" = "Blue" ); $result =array_diff_uassoc ($a 1, $a 2, "MyFunction");p Rint_r ($result);? >
Definition and usage
The ARRAY_DIFF_UASSOC () function is used to compare the key names and key values of two (or more) arrays and return a difference set.
Note: This function uses a user-defined function to compare key names!
The function compares the key names and key values of two (or more) arrays, and returns an array of difference sets that contain all the key names and key values in the array being compared (array1), but not in any other parameter array (array2 or array3, and so on).
Grammar
ARRAY_DIFF_UASSOC (array1,array2,array3...,myfunction);
parameters |
description |
array1 |
required. The first array to compare with the other array. |
array2 |
required. The array to compare with the first array. |
array3,... |
optional. The other array to compare to the first array. |
myfunction |
required. A string that defines the callable comparison function. If the first parameter is <, =, > The second argument, the corresponding comparison function must return an integer of < =, > 0. |
Technical details
return value: |
Returns an array of difference sets that includes all the key names and key values in the array being compared (array1), but not in any other parameter array (array2 or array3, and so on). |
PHP version: |
5+ |
More examples
Example 1
Compares the key names and key values of three arrays (using a user-defined function to compare key names) and returns the difference set:
<?phpfunction myfunction ($a, $b) {if ($a = = = $b) {return 0;} return ($a > $b) 1:-1;} $a 1=array ("a" and "Red", "b" = "green", "c" = "blue"), $a 2=array ("a" and "Red", "B" and "green", "D" and "Blue") ); $a 3=array ("e" = "Yellow", "a" and "red", "D" and "Blue"); $result =array_diff_uassoc ($a 1, $a 2, $a 3, "MyFunction") ;p Rint_r ($result);? >
Example 2
How to assign multiple arrays to the function:
<?php function MyFunction ($v 1, $v 2) {if ($v 1=== $v 2) {return 0,} if ($v 1> $v 2) {return 1,} else {return-1;}} $ A1=array (0=> "Dog",1=> "Cat",2=> "Horse"); $a 2=array (3=> "Dog",1=> "Cat",5=> "Horse"); $a 3=array (6=> "Bird",0=> "Dog",5=> "Horse"); Print_r (ARRAY_DIFF_UASSOC ($a 1, $a 2, $a 3, "MyFunction"))?>
Output:
Array ([2] = Horse)