array_intersect_key()
(PHP 5 >= 5.1.0, PHP 7)
تحسب الدالة array_intersect_key()
التقاطع (intersection) بين المصفوفات باستخدام المفاتيح للمقارنة.
الوصف
array array_intersect_key ( array $array1 , array $array2 [, array $... ] )
تعيد الدالة كل عناصر المصفوفة array1
الموجودة مفاتيحها بكل المصفوفات الأخرى.
المعاملات
array1
مصفوفة العناصر التي ستتحقق الدالة منها.
array2
مصفوفة العناصر التي ستقارن بها الدالة.
…
مجموعة متغيرة من المصفوفات التي ستقارن الدالة بها.
القيم المعادة
تعيد مصفوفة مرتبطة تحتوي على كل عناصر المصفوفة array1
الموجودة مفاتيحها بكل المصفوفات الأخرى.
أمثلة
المثال 1: مثال بسيط عن الدالة array_intersect_key()
<?php
$array1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4);
$array2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan' => 8);
var_dump(array_intersect_key($array1, $array2));
?>
نتيجة المثال السابق:
array(2) {
["blue"]=>
int(1)
["green"]=>
int(3)
}
في هذا المثال، سترى أن فقط المفاتيح "blue"
و "green"
موجودة في كلتي المصفوفتين ولذلك أعادتهما الدالة. لاحظ أيضًا أن القيم المرتبطة مع المفاتيح "blue"
و "green"
مختلفة بين المصفوفتين. ما يزال هناك تطابق مع ذلك لأن الدالة تقارن باستخدام المفاتيح فقط. وتكون القيم المعادة هي تلك الموجودة بالمصفوفة array1
.
يعد مفتاحا زوجي المفاتيح والقيم متساويان إذا وفقط إذا كان (string) $elem1 === (string) $elem2
. بكلمات أخرى، إذا كان التمثيل النصي لهما متماثلًا تمامًا.
انظر أيضًا
- الدالة
array_diff()
: تحسب الفرق بين المصفوفات. - الدالة
array_udiff()
: تحسب الفرق بين المصفوفات باستخدام دالة يحددها المستخدم للمقارنة بين البيانات. - الدالة
array_diff_assoc()
: تحسب الفرق بين المصفوفات مع استخدام تحقق إضافي من الفهارس. - الدالة
array_diff_uassoc()
: تحسب الفرق بين المصفوفات مع استخدام تحقق إضافي من الفهارس عن طريق تنفيذ دالة يحددها المستخدم. - الدالة
array_udiff_assoc()
: تحسب الفرق بين المصفوفات مع استخدام تحقق إضافي من الفهارس وتقارن البيانات باستخدام دالة يحددها المستخدم. - الدالة
array_udiff_uassoc()
: تحسب الفرق بين المصفوفات مع استخدام تحقق إضافي من الفهارس وتقارن البيانات والفهارس باستخدام دالة يحددها المستخدم. - الدالة
array_diff_key()
: تحسب الفرق بين المصفوفات باستخدام المفاتيح للمقارنة. - الدالة
array_diff_ukey()
: تحسب الفرق بين المصفوفات باستخدام دالة يحددها المستخدم لمقارنة المفاتيح. - الدالة
array_intersect()
: تحسب التقاطع بين المصفوفات. - الدالة
array_intersect_assoc()
: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي للفهارس. - الدالة
array_intersect_uassoc()
: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي من الفهارس، كما أنها تقارن الفهارس باستخدام دالة يحددها المستخدم. - الدالة
array_intersect_ukey()
: تحسب التقاطع بين المصفوفات باستخدام دالة يحددها المستخدم لمقارنة المفاتيح.