الفرق بين المراجعتين لصفحة: «PHP/array intersect assoc»
ط إضافة عنوان الصفحة والتصنيفات |
ط نقل عبد اللطيف ايمش صفحة PHP/Function/array-intersect-assoc إلى PHP/array intersect assoc: إعادة هيكلة التوثيق |
||
(5 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة) | |||
سطر 2: | سطر 2: | ||
(PHP 4 >= 4.3.0, PHP 5, PHP 7) | (PHP 4 >= 4.3.0, PHP 5, PHP 7) | ||
تحسب الدالة array_intersect_assoc() التقاطع (intersection of arrays) بين المصفوفات مع استخدام تحقق إضافي من الفهرس. | تحسب الدالة <code>array_intersect_assoc()</code> التقاطع (intersection of arrays) بين المصفوفات مع استخدام تحقق إضافي من الفهرس. | ||
== الوصف == | == الوصف == | ||
<syntaxhighlight lang="php"> | <syntaxhighlight lang="php"> | ||
array array_intersect_assoc ( array $array1 , array $array2 [, array $... ] ) | array array_intersect_assoc ( array $array1 , array $array2 [, array $... ] ) | ||
</syntaxhighlight>تعيد الدالة كل قيم المصفوفة array1 الموجودة بكل المصفوفات الأخرى.لاحظ أن المفاتيح تستخدم أيضًا في المقارنة على العكس مما يحدث مع دالة array_intersect(). | </syntaxhighlight>تعيد الدالة كل قيم المصفوفة <code>array1</code> الموجودة بكل المصفوفات الأخرى. لاحظ أن المفاتيح تستخدم أيضًا في المقارنة على العكس مما يحدث مع دالة <code>[[PHP/array_intersect|array_intersect()]]</code>. | ||
== المعاملات == | == المعاملات == | ||
=== <code>array1</code> === | |||
مصفوفة العناصر التي ستتحقق الدالة منها. | مصفوفة العناصر التي ستتحقق الدالة منها. | ||
array2 | === <code>array2</code> === | ||
مصفوفة العناصر التي ستقارن بها الدالة. | مصفوفة العناصر التي ستقارن بها الدالة. | ||
… | === <code>…</code> === | ||
مجموعة متغيرة من المصفوفات التي ستقارن الدالة بها. | مجموعة متغيرة من المصفوفات التي ستقارن الدالة بها. | ||
== القيم المعادة == | == القيم المعادة == | ||
تعيد مصفوفة مرتبطة تحتوي على كل عناصر المصفوفة array1 والموجودة بكل المصفوفات الأخرى. | تعيد مصفوفة مرتبطة تحتوي على كل عناصر المصفوفة <code>array1</code> والموجودة بكل المصفوفات الأخرى. | ||
== أمثلة == | == أمثلة == | ||
المثال 1: مثال بسيط عن الدالة array_intersect_assoc()<syntaxhighlight lang="php"> | المثال 1: مثال بسيط عن الدالة <code>array_intersect_assoc()</code><syntaxhighlight lang="php"> | ||
<?php | <?php | ||
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red"); | $array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red"); | ||
$array2 = array("a" => "green", "b" => "yellow", "blue", "red"); | $array2 = array("a" => "green", "b" => "yellow", "blue", "red"); | ||
$result_array = array_intersect_assoc($array1, $array2); | $result_array = array_intersect_assoc($array1, $array2); | ||
print_r($result_array); | print_r($result_array); | ||
?> | |||
</syntaxhighlight> | </syntaxhighlight> | ||
نتيجة المثال السابق:<syntaxhighlight lang="php"> | نتيجة المثال السابق:<syntaxhighlight lang="php"> | ||
Array | Array | ||
( | ( | ||
[a] => green | |||
) | ) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
في هذا المثال، سترى أن الزوج الوحيد الموجود بكلتي المصفوفتين هو "a" => "green" ولذلك أعادته الدالة مع النتائج. لم تُعد الدالة القيمة "red" لأنها مرتبطة بالمفتاح 0 في المصفوفة array1 وبالمفتاح 1 في المصفوفة | في هذا المثال، سترى أن الزوج الوحيد الموجود بكلتي المصفوفتين هو <code>"a" => "green"</code> ولذلك أعادته الدالة مع النتائج. لم تُعد الدالة القيمة <code>"red"</code> لأنها مرتبطة بالمفتاح <code>0</code> في المصفوفة <code>$array1</code> وبالمفتاح <code>1</code> في المصفوفة <code>$array2</code>، كذلك لم تُعد الدالة القيمة <code>"b"</code> لأنها مرتبطة بمفاتيح مختلفة في كل مصفوفة. | ||
يعدّ زوجا المفاتيح والقيم متساويان إذا وفقط إذا كان (string)$elem1 === (string)$elem2. بكلمات أخرى، إذا كان التمثيل النصي لهما متماثلًا تمامًا. | يعدّ زوجا المفاتيح والقيم متساويان إذا وفقط إذا كان <code>(string) $elem1 === (string) $elem2</code>. بكلمات أخرى، إذا كان التمثيل النصي لهما متماثلًا تمامًا. | ||
== انظر أيضًا == | == انظر أيضًا == | ||
* الدالة array_intersect(): تحسب التقاطع بين المصفوفات. | * الدالة <code>[[PHP/array_intersect|array_intersect()]]</code>: تحسب التقاطع بين المصفوفات. | ||
* الدالة | * الدالة <code>[[PHP/array_uintersect_assoc|array_uintersect_assoc()]]</code>: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي من الفهارس، كما أنها تقارن البيانات باستخدام دالة يحددها المستخدم. | ||
* الدالة | * الدالة <code>[[PHP/array_intersect_uassoc|array_intersect_uassoc()]]</code>: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي من الفهارس، كما أنها تقارن الفهارس باستخدام دالة يحددها المستخدم. | ||
* الدالة | * الدالة <code>[[PHP/array_uintersect_uassoc|array_uintersect_uassoc()]]</code>: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي من الفهارس، كما أنها تقارن الفهارس والبيانات باستخدام دوال مختلفة يحددها المستخدم. | ||
* الدالة array_diff(): تحسب الفرق بين المصفوفات. | * الدالة <code>[[PHP/array_diff|array_diff()]]</code>: تحسب الفرق بين المصفوفات. | ||
* الدالة array_diff_assoc(): تحسب الفرق بين المصفوفات مع استخدام تحقق إضافي من الفهارس. | * الدالة <code>[[PHP/array_diff_assoc|array_diff_assoc()]]</code>: تحسب الفرق بين المصفوفات مع استخدام تحقق إضافي من الفهارس. | ||
== مصادر == | == مصادر == |
المراجعة الحالية بتاريخ 03:49، 4 أبريل 2018
(PHP 4 >= 4.3.0, PHP 5, PHP 7)
تحسب الدالة array_intersect_assoc()
التقاطع (intersection of arrays) بين المصفوفات مع استخدام تحقق إضافي من الفهرس.
الوصف
array array_intersect_assoc ( array $array1 , array $array2 [, array $... ] )
تعيد الدالة كل قيم المصفوفة array1
الموجودة بكل المصفوفات الأخرى. لاحظ أن المفاتيح تستخدم أيضًا في المقارنة على العكس مما يحدث مع دالة array_intersect()
.
المعاملات
array1
مصفوفة العناصر التي ستتحقق الدالة منها.
array2
مصفوفة العناصر التي ستقارن بها الدالة.
…
مجموعة متغيرة من المصفوفات التي ستقارن الدالة بها.
القيم المعادة
تعيد مصفوفة مرتبطة تحتوي على كل عناصر المصفوفة array1
والموجودة بكل المصفوفات الأخرى.
أمثلة
المثال 1: مثال بسيط عن الدالة array_intersect_assoc()
<?php
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "b" => "yellow", "blue", "red");
$result_array = array_intersect_assoc($array1, $array2);
print_r($result_array);
?>
نتيجة المثال السابق:
Array
(
[a] => green
)
في هذا المثال، سترى أن الزوج الوحيد الموجود بكلتي المصفوفتين هو "a" => "green"
ولذلك أعادته الدالة مع النتائج. لم تُعد الدالة القيمة "red"
لأنها مرتبطة بالمفتاح 0
في المصفوفة $array1
وبالمفتاح 1
في المصفوفة $array2
، كذلك لم تُعد الدالة القيمة "b"
لأنها مرتبطة بمفاتيح مختلفة في كل مصفوفة.
يعدّ زوجا المفاتيح والقيم متساويان إذا وفقط إذا كان (string) $elem1 === (string) $elem2
. بكلمات أخرى، إذا كان التمثيل النصي لهما متماثلًا تمامًا.
انظر أيضًا
- الدالة
array_intersect()
: تحسب التقاطع بين المصفوفات. - الدالة
array_uintersect_assoc()
: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي من الفهارس، كما أنها تقارن البيانات باستخدام دالة يحددها المستخدم. - الدالة
array_intersect_uassoc()
: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي من الفهارس، كما أنها تقارن الفهارس باستخدام دالة يحددها المستخدم. - الدالة
array_uintersect_uassoc()
: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي من الفهارس، كما أنها تقارن الفهارس والبيانات باستخدام دوال مختلفة يحددها المستخدم. - الدالة
array_diff()
: تحسب الفرق بين المصفوفات. - الدالة
array_diff_assoc()
: تحسب الفرق بين المصفوفات مع استخدام تحقق إضافي من الفهارس.