Forum und email

array_intersect_ukey

(PHP 5 >= 5.1.0)

array_intersect_ukey — Berekent de overeenkomst tussen arrays gebruikmakend van een gebruikersfunctie op de keys ter vergelijking

Beschrijving

array array_intersect_ukey ( array $array1 , array $array2 [, array $... ], callback $key_compare_func )

array_intersect_ukey() geeft een array terug die alle waarden van array1 bevat, waarvan de keys voorkomen in alle argumenten.

De vergelijking gebeurt via een gebruikersfunctie. Deze moet een integer teruggeven die kleiner dan, gelijk aan of groter dan 0 is als de eerste key respectievelijk kleiner dan, gelijk aan of groter wordt beschouwd dan de tweede.

Example#1 array_intersect_ukey() voorbeeld

<?php
function key_compare_func($key1$key2)
{
    if (
$key1 == $key2)
        return 
0;
    else if (
$key1 $key2)
        return 
1;
    else
        return -
1;
}

$array1 = array('blue'  => 1'red'  => 2'green'  => 3'purple' => 4);
$array2 = array('green' => 5'blue' => 6'yellow' => 7'cyan'   => 8);

var_dump(array_intersect_ukey($array1$array2'key_compare_func'));
?>

Het resultaat van dit script is als volgt:

array(2) {
  ["blue"]=>
  int(1)
  ["green"]=>
  int(3)
})

In ons voorbeeld zie je dat alleen de keys 'blue' en 'green' voorkomen in beide arrays en dus worden teruggegeven. Merk ook op dat de waarden voor de keys 'blue' en 'green' verschillen tussen beide arrays. Een overeenkomst wordt toch gevonden omdat alleen de keys worden gecontroleerd. De teruggegeven waarden zijn die van array1 .

Zie ook array_diff(), array_udiff() array_diff_assoc(), array_diff_uassoc(), array_udiff_assoc(), array_udiff_uassoc(), array_diff_key(), array_diff_ukey(), array_intersect(), array_intersect_assoc(), array_intersect_uassoc() en array_intersect_key().