Función array_intersect_ukey

La función array_intersect_ukey acepta varios arrays y una función callback para comparar sus claves. En el primer parámetro se pasa el array principal, y en los siguientes - los arrays para comparar. En el último parámetro se pasa la función callback, que debe comparar las claves y devolver un número entero (menor, igual o mayor que cero).

Sintaxis

phparray_intersect_ukey(array $array1, array $array2, ..., callable $key_compare_func): array

Ejemplo

Comparemos las claves de dos arrays usando una función personalizada:

php<?php
  $array1 = ['a' => 1, 'b' => 2, 'c' => 3];
  $array2 = ['a' => 4, 'c' => 5, 'd' => 6];
  
  $res = array_intersect_ukey($array1, $array2, function($key1, $key2) {
    return strcmp($key1, $key2);
  });
  
  print_r($res);
?>

Resultado de la ejecución del código:

php['a' => 1, 'c' => 3]

Ejemplo

Comparación de claves de tres arrays con sensibilidad a mayúsculas y minúsculas:

php<?php
  $array1 = ['A' => 1, 'B' => 2, 'C' => 3];
  $array2 = ['a' => 4, 'B' => 5, 'C' => 6];
  $array3 = ['A' => 7, 'B' => 8, 'c' => 9];
  
  $res = array_intersect_ukey($array1, $array2, $array3, function($key1, $key2) {
    return strcmp($key1, $key2);
  });
  
  print_r($res);
?>

Resultado de la ejecución del código:

php['B' => 2]

Véase también

  • la función array_intersect,
    que calcula la intersección de arrays por valores
  • la función array_intersect_key,
    que calcula la intersección de arrays por claves
  • la función array_uintersect,
    que calcula la intersección de arrays con función callback para comparar valores