THE WORLD'S LARGEST WEB DEVELOPER SITE

PHP array_udiff_uassoc() Function

❮ PHP Array Reference

Example

Compare the keys and values of two arrays (using two user-defined functions for comparison) and return the differences:

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

function myfunction_value($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","c"=>"green");

$result=array_udiff_uassoc($a1,$a2,"myfunction_key","myfunction_value");
print_r($result);
?>
Run example »

Definition and Usage

The array_udiff_uassoc() function compares the keys and values of two or more arrays, and returns the differences.

Note: This function uses two user-defined functions for comparison; the key is used in the first function and the value is used in the second!

This function compares the keys and 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_uassoc(array1,array2,array3...,myfunction_key,myfunction_value)

Parameter Description
array1 Required. The array to compare from
array2 Required. An array to compare against
array3,... Optional. More arrays to compare against
myfunction_key Required. The name of the user-defined function that compares the array keys.
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
myfunction_value Required. The name of the user-defined function that compares the array values.
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+

❮ PHP Array Reference