Wednesday, October 21, 2020

PHP array_diff_ukey() Function



Hello folks! welcome to another section of our tutorial on PHP. In this tutorial, we will be discussing about the PHP's array_diff_ukey() Function.

PHP array_diff_ukey() function compares only the keys of two or more arrays making use of a user defined function and returns an array containing the entries from array1 that are not present in array2, array3, etc.

This PHP function is different from the array_diff() function because the array_diff() function compares the values whereas this function compares the keys.

This PHP function is different from array_diff_assoc() because PHP array_diff_assoc() function makes use of the internal algorithm to compare the keys and their values where as this PHP function makes use of the user defined functions.

Syntax

Following below is the syntax to use this function -

array_diff_ukey ( $array1, $array2 [, $array3...,callback $key_compare_func] );


Parameter Details

Sr.NoParameter & Description
1

array1(Required)

The first array is the array that the others will be compared with.

2

array2(Required)

It is an array to be compared with the first array

3

array3(Optional)

It is an array to be compared with the first array

4

key_compare_func(Required)

It is a callback function to use to compare the keys. This callback function must return an integer <, =, > than 0 if the first argument is considered to be respectively <, =, > than the second argument.


Return Value

It returns an array containing all the entries from array1 that are not present in any other arrays.

PHP Version

This function was first lunched as part of core PHP v 5.1.0.

Example1

Try out the below example -

<?php
   function key_compare_func($a, $b) {
      if ($a === $b) {
         return 0;
      }
      return ($a > $b)? 1: -1;
   }
   $input1 = array(0=>"banana", 1=>"orange", 2=>"grapes");
   $input2 = array(3=>"apple",1=>"apricot", 5=>"mango");

   print_r(array_diff_ukey($input1,$input2,"key_compare_func"));
?>

Output

When the above code is executed, it will produce the following result -

Array
(
    [0] => banana
    [2] => grapes
)

Example2

Try the following example -

<?php
   function key_compare_func($a, $b) {
      if ($a === $b) {
         return 0;
      }
      return ($a > $b)? 1: -1;
   }
   $input1 = array('blue'  => 1, 'red'  => 2, 'green'  => 3, 'purple' => 4);
   $input2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan'   => 8);

   print_r(array_diff_ukey($input1,$input2,"key_compare_func"));
?>

Output

When the above code is executed, it will produce the following result -

Array
(
    [red] => 2
    [purple] => 4
)


Alright guys! This is where we are rounding up for this tutorial post. In our next tutorial guide, we are going to be discussing about the PHP array_fill() Function.

Feel free to ask your questions where necessary and i will attend to them as soon as possible. If this tutorial was helpful to you, you can use the share button to share this tutorial.

Follow us on our various social media platforms to stay updated with our latest tutorials. You can also subscribe to our newsletter in order to get our tutorials delivered directly to your emails.

Thanks for reading and bye for now.
Share:

0 comments:

Post a Comment

Hello dear readers! Please kindly try your best to make sure your comments comply with our comment policy guidelines. You can visit our comment policy page to view these guidelines which are clearly stated. Thank you.