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

phparray_diff_key(array $array1, array $array2 [, array $...]): array

Piemērs

Salīdzināsim divus masīvus pēc atslēgām:

php<?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:

php['b' => 2, 'c' => 3]

Piemērs

Trīs masīvu salīdzināšana pēc atslēgām:

php<?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:

php[3 => 'c']

Piemērs

Skaitlisko un virkņu atslēgu izmantošana:

php<?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:

php['color' => 'red', 2 => 'b']

Skatiet arī