Functie array_diff_key
De functie array_diff_key vergelijkt de sleutels van twee of meer arrays en retourneert een array die de elementen van de eerste array bevat, waarvan de sleutels ontbreken in de andere arrays. De vergelijking gebeurt alleen op basis van sleutels, de waarden van de elementen worden niet in aanmerking genomen.
Syntaxis
array_diff_key(array $array1, array $array2 [, array $...]): array
Voorbeeld
Laten we twee arrays vergelijken op sleutels:
<?php
$arr1 = ['a' => 1, 'b' => 2, 'c' => 3];
$arr2 = ['a' => 4, 'd' => 5];
$res = array_diff_key($arr1, $arr2);
print_r($res);
?>
Resultaat van de code-uitvoering:
['b' => 2, 'c' => 3]
Voorbeeld
Vergelijking van drie arrays op sleutels:
<?php
$arr1 = [1 => 'a', 2 => 'b', 3 => 'c'];
$arr2 = [1 => 'd', 4 => 'e'];
$arr3 = [5 => 'f', 2 => 'g'];
$res = array_diff_key($arr1, $arr2, $arr3);
print_r($res);
?>
Resultaat van de code-uitvoering:
[3 => 'c']
Voorbeeld
Gebruik van numerieke en string-sleutels:
<?php
$arr1 = ['color' => 'red', 1 => 'a', 2 => 'b'];
$arr2 = [1 => 'c', 'size' => 'XL'];
$res = array_diff_key($arr1, $arr2);
print_r($res);
?>
Resultaat van de code-uitvoering:
['color' => 'red', 2 => 'b']
Zie ook
-
de functie
array_diff,
die arrays vergelijkt op waarden -
de functie
array_intersect_key,
die overeenkomende sleutels retourneert