La función array_diff_ukey() es una función incorporada en PHP que se usa para ejecutar la diferencia de arrays usando una función de devolución de llamada en las teclas para comparar. Esta función compara la clave de la array con las claves de las arrays y devuelve la diferencia de eso.
Sintaxis:
array array_diff_ukey(array $array, array ...$arrays, callable $key_compare_func)
Parámetros: Esta función acepta los siguientes parámetros que se describen a continuación:
- $array: este parámetro contiene la array desde la que comparar.
- $arrays: este parámetro contiene las arrays con las que comparar.
- $key_compare_func: es una función de devolución de llamada de comparación que devuelve un valor entero basado en los argumentos.
Valor de retorno: esta función devuelve una array que contiene todas las entradas de una array y no está presente en ninguna otra array.
Ejemplo 1:
PHP
<?php function key_compare_func($key1, $key2) { if ($key1 == $key2) return 0; else if ($key1 > $key2) return 1; else return -1; } $arr1 = array( 'A' => 15, 'B' => 12, 'C' => 34, 'D' => 14 ); $arr2 = array( 'B' => 50, 'D' => 60, 'E' => 70, 'F' => 80 ); var_dump(array_diff_ukey($arr1, $arr2, 'key_compare_func')); ?>
Producción:
array(2) { ["A"] => int(15) ["C"] => int(34) }
Ejemplo 2:
PHP
<?php function key_compare_func($key1, $key2) { if ($key1 == $key2) return 0; else if ($key1 < $key2) return 1; else return -1; } $arr1 = array( 'Geeks' => "HTML", 'GFG' => "CSS", 'Geek' => "JavaScript", 'G4G' => "PHP" ); $arr2 = array( 'Geeks' => "CPP", 'G4G' => "Java", 'Geek' => "Python", 'GeeksforGeeks' => "DSA" ); var_dump(array_diff_ukey($arr1, $arr2, 'key_compare_func')); ?>
Producción:
array(1) { ["GFG"] => string(3) "CSS" }
Referencia: https://www.php.net/manual/en/function.array-diff-ukey.php