PHP में array_diff_key() फ़ंक्शन सरणियों की कुंजियों (keys) की आंतरिक तुलना (===) करके अंतर (difference) लौटाता है। मानों की तुलना नहीं की जाती।
सिंटैक्स (Syntax)
array_diff_key(array $arr1, array $arr2, array ...$arrays): array
पैरामीटर्स (Parameters)
$arr1 − आधार सरणी।
$arr2 − तुलना के लिए दूसरी सरणी।
$arrays (वैकल्पिक) − अतिरिक्त सरणियाँ।
रिटर्न वैल्यू (Return Value)
पहली सरणी की वे प्रविष्टियाँ वाली सरणी लौटाता है जिनकी कुंजियाँ अन्य किसी सरणी में नहीं हैं।
उदाहरण (Examples)
उदाहरण 1: मूल उपयोग
<?php
$arr1 = array('car' => 10, 'bus' => 15, 'truck' => 22);
$arr2 = array('motorbike' => 35, 'bus' => 42);
$result = array_diff_key($arr1, $arr2);
print_r($result);
?>
आउटपुट
Array
(
[car] => 10
[truck] => 22
)
कुंजी "bus" दोनों में है इसलिए बाहर। "car", "truck" केवल arr1 में।
उदाहरण 2: तीन सरणियों के साथ
<?php $arr1 = ["a" => 1, "b" => 2, "c" => 3, "d" => 4]; $arr2 = ["b" => 20, "c" => 30]; $arr3 = ["c" => 300]; $result = array_diff_key($arr1, $arr2, $arr3); print_r($result); // केवल "a", "d" किसी अन्य में नहीं ?>
आउटपुट
Array
(
[a] => 1
[d] => 4
)
array_diff_key() vs array_diff_assoc()
| फ़ंक्शन | कुंजी तुलना | मान तुलना |
|---|---|---|
| array_diff() | नहीं | === |
| array_diff_assoc() | === | === |
| array_diff_key() | === | नहीं |
| array_diff_ukey() | कॉलबैक | नहीं |
| array_diff_uassoc() | कॉलबैक | === |