Funkcija array_diff_key
Funkcija array_diff_key salīdzina divu vai vairāku masīvu atslēgas un atgriež masīvu, kas satur pirmā masīva elementus, kuru atslēgas nav atrodamas pārējos masīvos. Salīdzināšana notiek tikai pēc atslēgām, elementu vērtības netiek ņemtas vērā.
Sintakse
array_diff_key(array $array1, array $array2 [, array $...]): array
Piemērs
Salīdzināsim divus masīvus pēc atslēgām:
<?php
$arr1 = ['a' => 1, 'b' => 2, 'c' => 3];
$arr2 = ['a' => 4, 'd' => 5];
$res = array_diff_key($arr1, $arr2);
print_r($res);
?>
Koda izpildes rezultāts:
['b' => 2, 'c' => 3]
Piemērs
Trīs masīvu salīdzināšana pēc atslēgām:
<?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);
?>
Koda izpildes rezultāts:
[3 => 'c']
Piemērs
Skaitlisko un virkņu atslēgu izmantošana:
<?php
$arr1 = ['color' => 'red', 1 => 'a', 2 => 'b'];
$arr2 = [1 => 'c', 'size' => 'XL'];
$res = array_diff_key($arr1, $arr2);
print_r($res);
?>
Koda izpildes rezultāts:
['color' => 'red', 2 => 'b']
Skatiet arī
-
funkciju
array_diff,
kas salīdzina masīvus pēc vērtībām -
funkciju
array_intersect_key,
kas atgriež sakritošās atslēgas