Home > Article > Backend Development > How to use array_diff_ukey() function in PHP?
This article will introduce to you how to use the "array_diff_ukey()" function in PHP. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to everyone.
array_diff_ukey() function is a built-in function in PHP. It is used to compare two or more arrays of keys using a user-defined function and returns an array that is array1 and does not exist any other array2, array3 or more...
The syntax is as follows:
array_diff_ukey($array1, $array2, $array3..., arr_diffukeyFunction)
Using parameters: This function accepts a minimum of three parameters, while all three parameters are required and one is optional. The parameters are described as follows:
#$ array1 (mandatory): This array will be compared to other arrays (for example, this array is compared from array1).
$ array2 (mandatory): Array compared to the first array.
$ array3 (optional): Array compared to the first array.
arr_diffukeyFunction (mandatory): This is a required user-defined function. Defines a string on which comparison functions can be called. If the first argument is greater than the second argument, the comparison function returns an integer greater than 0.
Return value: Returns an array containing entries in array1 that do not exist in other arrays, for example: -(arra2, arra3, arar4….more). If all values exist in other arrays, the function returns NULL. The return value type is an array.
Example 1:
Input: $arr1 = array("one"=>"C Program", "two"=>"PHP Program", "three"=>"Java Program "); $arr2 = array("one"=>"Java Program", "two"=>"C++ Program", "six"=>"Java Program"); Output: Array ( [three] => Java Program ) Explanation: First two values of arr1 are matched with arr2 and last value not matched so the function returns last value.
Example 2:
Input: $arr1=array("one"=>"C Program", "two"=>"PHP Program", "three"=>"Java Program "); $arr2=array("one"=>"Java Program", "two"=>"C++ Program", "three"=>"Java Program"); Output: Array ( ) Explanation: All values are matched with arr2 so function return null values.
Let us take an example to understand the array_diff_ukey() function.
Program 1: Get two arrays (array1 and array2) and use the user-defined key comparison function (diffukeyFunction).
Simple solution in PHP language:
<?php // Program of array_diff_ukey function in PHP function arr_diffukeyFunction( $one , $two ) { if ( $one === $two ) { return 0; } return ( $one > $two ) ? 1 : -1; } // Driver Code $arr1 = array ( "one" => "C Program" , "two" => "PHP Program" , "three" => "Java Program " ); $arr2 = array ( "one" => "Java Program" , "two" => "C++ Program" , "six" => "Java Program" ); $result = array_diff_ukey ( $arr1 , $arr2 , "arr_diffukeyFunction" ); print_r( $result ); ?>
The output is as follows:
Array ( [three] => Java Program )
Program 2: Get three arrays (array1, array2 and arra3), and use user-defined Key comparison function (diffukeyFunction).
<?php // Program of array_diff_ukey function in PHP function arr_diffukeyFunction( $one , $two ) { if ( $one === $two ) { return 0; } return ( $one > $two ) ? 1 : -1; } // Driver Code $arr1 = array ( "one" => "C Program" , "two" => "PHP Program" , "three" => "Java Program " ); $arr2 = array ( "one" => "XML Program" , "two" => "C++ Program" , "four" => "CSS Program" ); $arr3 = array ( "five" => "MVC Program" , "six" => "C# Program" , "one" => "ASP .NET Program" ); $result = array_diff_ukey ( $arr1 , $arr2 , $arr3 , "arr_diffukeyFunction" ); print_r( $result ); ?>
The output is as follows:
Array ( [three] => Java Program )
Program 3:
If all values match in other arrays, Null is returned
<?php // Program of array_diff_ukey function in PHP function arr_diffukeyFunction( $one , $two ) { if ( $one === $two ) { return 0; } return ( $one > $two ) ? 1 : -1; } // Driver Code $arr1 = array ( "one" => "C Program" , "two" => "PHP Program" ); $arr2 = array ( "one" => "Java Program" , "two" => "C++ Program" ); $result = array_diff_ukey ( $arr1 , $arr2 , "arr_diffukeyFunction" ); print_r( $result ); ?>
The output is as follows:
Array ( )
Example 4:
If only one array (array1) is used, and a user-defined key comparison function (diffukeyFunction) is used, there is no output and a "RUNTIME ERROR" warning message is given.
<?php //Program of array_diff_ukey function in PHP function arr_diffukeyFunction( $one , $two ) { if ( $one === $two ) { return 0; } return ( $one > $two ) ? 1 : -1; } // Driver Code $arr1 = array ( "one" => "C Program" , "two" => "PHP Program" , "three" => "Java Program " ); //take only one array $result = array_diff_ukey ( $arr1 , "arr_diffukeyFunction" ); print_r( $result ); ?>
The output is as follows:
No Output
Warning:
PHP Warning: array_diff_ukey(): at least 3 parameters are required, 2 given in /home/c0177af9f69e897ad93cc9855a9ae415.php on line 23
Recommended learning: php video tutorial
The above is the detailed content of How to use array_diff_ukey() function in PHP?. For more information, please follow other related articles on the PHP Chinese website!