array_intersect_key funksiyasi

array_intersect_key funksiyasi bir nechta massivlarni qabul qiladi va birinchi massivning kalitlari boshqa barcha massivlarda mavjud bo‘lgan elementlarini o‘z ichiga olgan yangi massivni qaytaradi. Solishtirish faqat kalitlar bo‘yicha amalga oshiriladi, qiymatlar hisobga olinmaydi.

Sintaksis

phparray_intersect_key(array1, array2, array3, ...);

Misol

Keling, ikkita massivni kalitlar bo‘yicha solishtiramiz:

php<?php
  $arr1 = ['a' => 1, 'b' => 2, 'c' => 3];
  $arr2 = ['a' => 4, 'c' => 5, 'd' => 6];
  
  $res = array_intersect_key($arr1, $arr2);
  print_r($res);
?>

Kodni bajarish natijasi:

php['a' => 1, 'c' => 3]

Misol

Keling, uchta massivni kalitlar bo‘yicha solishtiramiz:

php<?php
  $arr1 = [1 => 'a', 2 => 'b', 3 => 'c'];
  $arr2 = [1 => 'd', 3 => 'e'];
  $arr3 = [1 => 'f', 4 => 'g'];
  
  $res = array_intersect_key($arr1, $arr2, $arr3);
  print_r($res);
?>

Kodni bajarish natijasi:

php[1 => 'a']

Misol

Turli xil kalit turlariga ega bo‘lgan massivlarni solishtirish:

php<?php
  $arr1 = ['1' => 'a', 2 => 'b'];
  $arr2 = [1 => 'c', '2' => 'd'];
  
  $res = array_intersect_key($arr1, $arr2);
  print_r($res);
?>

Kodni bajarish natijasi:

php['1' => 'a', 2 => 'b']

Shuningdek qarang

  • array_intersect funksiyasi,
    bu massivlarni qiymatlar bo‘yicha solishtiradi
  • array_diff_key funksiyasi,
    bu massivlarni kalitlar bo‘yicha solishtiradi va farqni qaytaradi
  • array_intersect_assoc funksiyasi,
    bu ham kalitlarni, ham qiymatlarni solishtiradi