Forum und email

array_diff_key

(PHP 5 >= 5.1.0)

array_diff_key — Bereken het verschil tussen arrays gebruikmakend van de keys voor de vergelijking

Beschrijving

array array_diff_key ( array $array1 , array $array2 [, array $ ... ] )

array_diff_key() geeft een array terug die alle waarden van array1 bevat, waarvan de keys niet voorkomen in de andere argumenten. Merk op dat de associatie wordt behouden. Deze functie is vergelijkbaar met array_diff(), behalve dat de vergelijking wordt gedaan op basis van de keys en niet de waarden.

Example#1 array_diff_key() voorbeeld

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

var_dump(array_diff_key($array1$array2));
?>

Het resultaat van dit script is als volgt:

array(2) {
  ["red"]=>
  int(2)
  ["purple"]=>
  int(4)
}

De twee keys van de key => value paren worden alleen gelijkwaardig beschouwd wanneer (string) $key1 === (string) $key2 . Ofwel, een strikte type validatie wordt toegepast, dus de string representatie moet identiek zijn.

Note: Let erop dat deze functie slechts een dimensie van een n-dimensionale array controleert. Het is uiteraard mogelijk om diepere dimensies te controleren, bijvoorbeeld via array_diff_key($array1[0], $array2[0]);.

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