PHP में array_intersect_key() फ़ंक्शन सरणियों की कुंजियों (keys) की आंतरिक तुलना (===) करके मिलान वाली प्रविष्टियाँ लौटाता है। मानों की तुलना नहीं की जाती।
सिंटैक्स (Syntax)
array_intersect_key(array $arr1, array $arr2, array ...$arrays): array
पैरामीटर्स (Parameters)
$arr1 − आधार सरणी।
$arr2 − तुलना के लिए दूसरी सरणी।
$arrays (वैकल्पिक) − अतिरिक्त सरणियाँ।
रिटर्न वैल्यू (Return Value)
पहली सरणी की वे प्रविष्टियाँ वाली सरणी लौटाता है जिनकी कुंजियाँ सभी अन्य सरणियों में मौजूद हों।
उदाहरण (Examples)
उदाहरण 1: मूल उपयोग
<?php
$arr1 = array("p" => "headphone", "q" => "earpod", "r" => "charger");
$arr2 = array("p" => "headphone", "q" => "earpod");
$result = array_intersect_key($arr1, $arr2);
print_r($result);
?>
आउटपुट
Array
(
[p] => headphone
[q] => earpod
)
उदाहरण 2: मान अलग होने पर भी कुंजी मिलान
<?php $arr1 = ["a" => 1, "b" => 2, "c" => 3]; $arr2 = ["a" => 99, "b" => 88, "d" => 4]; $result = array_intersect_key($arr1, $arr2); print_r($result); // कुंजी "a", "b" मिलीं, मान arr1 से लिए गए ?>
आउटपुट
Array
(
[a] => 1
[b] => 2
)
उदाहरण 3: तीन सरणियों के साथ
<?php $arr1 = ["x" => 1, "y" => 2, "z" => 3]; $arr2 = ["y" => 20, "z" => 30]; $arr3 = ["z" => 300]; $result = array_intersect_key($arr1, $arr2, $arr3); print_r($result); // केवल "z" तीनों में ?>
आउटपुट
Array
(
[z] => 3
)
array_intersect_key() vs array_intersect_assoc()
| फ़ंक्शन | तुलना | रिटर्न |
|---|---|---|
| array_intersect_key() | केवल कुंजियाँ (===) | arr1 के मान |
| array_intersect_assoc() | कुंजी + मान (===) | arr1 के मान |
| array_intersect() | केवल मान (===) | arr1 के मान (कुंजियाँ संरक्षित) |