PHP Function Reference

PHP array_udiff_assoc() Function



The PHP array_udiff_assoc() function compares keys and values of an array against one or more other arrays and returns all elements of the first array that are not present in any of the other arrays. This function compares values using a user-defined comparison function.

Unlike array_udiff() function, it uses array keys also for comparison. Unlike array_diff_assoc() function, it uses a user-defined function to compare values.

Syntax

array_udiff_assoc(array, arrays, myfunction)

Parameters

array Required. Specify an array to compare from.
arrays Required. Specify one or more arrays to compare against.
myfunction Required. Specify user-defined function to compare values. The comparison function must return an integer <, =, or > than 0 if the first argument is <, =, or > than the second argument.

Return Value

Returns an array containing all the entries from array which are not present in any of the other arrays.

Exceptions

NA.

Example:

The example below shows the usage of array_udiff_assoc() function.

<?php
function MyFunc($x, $y) {
  if ($x == $y) 
    return 0;
  return ($x < $y)? -1: 1;
}

$Arr1 = array(0, 1, 2, 3);
$Arr2 = array(1, 0, 2, 3);

//comparing Arr1 against Arr2
$Arr1_diff_Arr2 = 
    array_udiff_assoc($Arr1, $Arr2, 'MyFunc');
print_r($Arr1_diff_Arr2);
?>

The output of the above code will be:

Array
(
    [0] => 0
    [1] => 1
)

Example:

Consider one more example which illustrates on usage of array_udiff_assoc() function.

<?php
function MyFunc($x, $y) {
  if ($x == $y) 
    return 0;
  return ($x < $y)? -1: 1;
}

$Arr1 = array("a"=>"Red", 
              "b"=>"Blue",
              "c"=>"Green");
$Arr2 = array("a"=>"Red", "Blue", "Green");

//comparing Arr1 against Arr2
$Arr1_diff_Arr2 = 
    array_udiff_assoc($Arr1, $Arr2, 'MyFunc');
print_r($Arr1_diff_Arr2);
?>

The output of the above code will be:

Array
(
    [b] => Blue
    [c] => Green
)

❮ PHP Array Reference