La función array_intersect_ukey() es una función incorporada en PHP que se usa para calcular la intersección de dos o más arrays contra claves con la ayuda de la función definida por el usuario y la función devuelve una array. La array devuelta es la primera array, que tiene claves coincidentes y está presente en todos los parámetros como resultado final.
Sintaxis:
array array_intersect_ukey( $array1, $array2, ..., $ukey_intersectFunction )
Parámetros: esta función acepta dos o más arrays y los parámetros $ukey_intersectFunction como se mencionó anteriormente y se describe a continuación:
- $array1: Es la array inicial utilizada para comparar con otra array. Es un parámetro obligatorio.
- $array2: La array comparada con la primera clave de array. Es un parámetro obligatorio.
- $array. . . : La lista de argumentos de array que se compararán con la primera clave de array. Son parámetros opcionales.
- $ukey_intersectFunction: es un parámetro obligatorio que contiene la función definida por el usuario. Una string que define una función de comparación invocable.
Valor devuelto: Devuelve una array que contiene el valor de la primera array cuyas claves existen en todos los demás argumentos.
Nota: Esta función utiliza una función definida por el usuario para comparar las claves . No comparar valores de claves.
Los siguientes ejemplos ilustran la función array_intersect_ukey() en PHP:
Programa 1: este programa utiliza dos arrays (array1 y array2) y una función de comparación de claves definida por el usuario (ukey_intersectFunction) para calcular la intersección de arrays.
PHP
<?php // PHP program to illustrates the // array_intersect_ukey() function function ukey_intersectFunction($x, $y) { if ($x === $y) return 0; return ($x > $y)? 1: -1; } $a1 = array( "a" => "Java", "b" => "C++", "c" => "XML", "d" => "Python", "p" => "PHP" ); $a2 = array( "a" => "Python", "b" => "CSS", "h" => "VB", "x" => "HTML", "p" => "SQL" ); // Print results if the key is matching form both // array and print first array elements. $result = array_intersect_ukey($a1, $a2, "ukey_intersectFunction"); print_r($result); ?>
Array ( [a] => Java [b] => C++ [p] => PHP )
Programa 2: este programa utiliza cuatro arreglos (arreglo1, arreglo2, arreglo3 y arreglo4) y una función de comparación de claves definida por el usuario (ukey_intersectFunction) para calcular la intersección de los arreglos.
PHP
<?php // PHP program to illustrates the // array_intersect_ukey() function function ukey_intersectFunction($x, $y) { if ($x === $y) return 0; return ($x > $y)? 1: -1; } // Arrays $arr1 = array( "a" => "A", "b" => "B", "c" => "D", "d" => "E", "p" => "F" ); $arr2 = array( "o" => "A", "b" => "B", "h" => "V", "x" => "T", "p" => "X" ); $arr3 = array( "a" => "N", "b" => "B", "h" => "O", "x" => "T", "p" => "P" ); $arr4 = array( "s" => "W", "b" => "B", "z" => "D", "x" => "T", "p" => "P" ); // Print the result if key is matching form both // array and print first array elements. $result = array_intersect_ukey($arr1, $arr2, $arr3, $arr4, "ukey_intersectFunction"); print_r($result); ?>
Array ( [b] => B [p] => F )
Programa 3: Este programa usa tres arreglos (arreglo1, arreglo2 y arreglo3) y una función de comparación clave definida por el usuario para calcular la intersección de los arreglos.
PHP
<?php // PHP program to illustrates the // array_intersect_ukey() function function ukey_intersectFunction($x, $y) { if ($x === $y) return 0; return ($x > $y)? 1: -1; } // Arrays $arr1 = array( "a" => "Bhopal", "b" => "New Delhi", "n" => "Madras", "o" => "Mumbai", "p" => "Finland" ); $arr2 = array( "a" => "Bhubaneswar", "b" => "Ranchi", "n" => "Kolkata", "o" => "Lucknow", "p" => "Allahabad" ); $arr3 = array( "a" => "Rourkela", "b" => "Jammu", "n" => "Kasmir", "o" => "Tripura", "p" => "Shillong" ); // Print the result if key is matching form both // array and print first array elements. $result = array_intersect_ukey($arr1, $arr2, $arr3, "ukey_intersectFunction"); print_r($result); ?>
Array ( [a] => Bhopal [b] => New Delhi [n] => Madras [o] => Mumbai [p] => Finland )
Programa 4: este programa utiliza dos arreglos (arreglo1 y arreglo2) y una función de comparación de claves definida por el usuario (ukey_intersectFunction) para calcular la intersección de los arreglos. Ambas arrays tienen una clave diferente y luego la array devuelve NULL/Empty Array .
PHP
<?php // PHP program to illustrates the // array_intersect_ukey() function function ukey_intersectFunction($x, $y) { if ($x === $y) return 0; return ($x > $y)? 1: -1; } // Arrays $arr1 = array( "a" => "IIT Shillong", "b" => "IIT Bhopal", "n" => "NIT Bhopal" ); $arr2 = array( "x" => "IIT Bhubaneswar", "y" => "IIT Ranchi", "z" => "NIT Durgapur" ); // Print the result if key is matching form both // array and print first array elements. $result = array_intersect_ukey($arr1, $arr2, "ukey_intersectFunction"); print_r($result); ?>
Array ( )
Programa 5: este programa utiliza dos arreglos (arreglo1 y arreglo2) y ambos arreglos tienen una clave diferente pero el mismo valor en el mismo índice. Compare la array y devuelva NULL/Empty Array .
PHP
<?php // PHP program to illustrates the // array_intersect_ukey() function function ukey_intersectFunction($x, $y) { if ($x === $y) return 0; return ($x > $y)? 1: -1; } // Arrays $arr1 = array( "a" => "IIT", "b" => "CIT", "n" => "NIT" ); $arr2 = array( "x" => "IIT", "y" => "CIT", "z" => "NIT" ); // Print the result if key is matching form both // array and print first array elements. $result = array_intersect_ukey($arr1, $arr2, "ukey_intersectFunction"); print_r($result); ?>
Array ( )
Artículos relacionados:
- PHP | función array_diff_key()
- PHP | función array_intersect_key()
- PHP | función array_intersect()
- PHP | función array_intersect_assoc()
- PHP | función array_uintersect_assoc()
Referencia: http://php.net/manual/en/function.array-intersect-ukey.php