PHP array_udiff() Function
Example
Compare the values of two arrays (use a user-defined function to compare the values) and return the differences:
<?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);
?>
Run example »
Definition and Usage
The array_udiff() function compares the values of two or more arrays, and returns the differences.
Note: This function uses a user-defined function to compare the values!
This function compares the values of two (or more) arrays, and return an array that contains the entries from array1 that are not present in array2 or array3, etc.
Syntax
array_udiff(array1,array2,array3...,myfunction)
Parameter | Description |
---|---|
array1 | Required. The array to compare from |
array2 | Required. An array to compare against |
array3,... | Optional. More arrays to compare against |
myfunction | Required. A string that define a callable comparison function. The comparison function must return an integer <, =, or > than 0 if the first argument is <, =, or > than the second argument |
Technical Details
Return Value: | Returns an array containing the entries from array1 that are not present in any of the other arrays |
---|---|
PHP Version: | 5.1.0+ |
More Examples
Example 1
Compare the values of three arrays (use a user-defined function to compare the values), and return the differences:
<?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);
?>
Run example »
PHP Array Reference