Funktionen array_intersect_ukey

Funktionen array_intersect_ukey tager flere arrays og en callback-funktion til sammenligning af deres nøgler. Den første parameter er hovedarrayet, og de efterfølgende parametre er arrays til sammenligning. Den sidste parameter er callback-funktionen, som skal sammenligne nøgler og returnere et heltal (mindre end, lig med eller større end nul).

Syntaks

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

Eksempel

Sammenlign nøgler fra to arrays ved hjælp af en brugerdefineret funktion:

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);
?>

Resultatet af kodekørsel:

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

Eksempel

Sammenligning af nøgler fra tre arrays med forskel på store og små bogstaver:

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);
?>

Resultatet af kodekørsel:

php['B' => 2]

Se også

  • funktionen array_intersect,
    som beregner krydsningen af arrays baseret på værdier
  • funktionen array_intersect_key,
    som beregner krydsningen af arrays baseret på nøgler
  • funktionen array_uintersect,
    som beregner krydsningen af arrays med en callback-funktion til sammenligning af værdier