الفرق بين المراجعتين لصفحة: «PHP/array intersect assoc»

من موسوعة حسوب
< PHP
ط إضافة عنوان الصفحة والتصنيفات
ط نقل عبد اللطيف ايمش صفحة 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>.


== المعاملات ==
== المعاملات ==
array1


=== <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
   [a] => green
 
)
)
</syntaxhighlight>
</syntaxhighlight>


في هذا المثال، سترى أن الزوج الوحيد الموجود بكلتي المصفوفتين هو "a" => "green" ولذلك أعادته الدالة مع النتائج. لم تُعد الدالة القيمة "red" لأنها مرتبطة بالمفتاح 0 في المصفوفة array1 وبالمفتاح 1 في المصفوفة array2، كذلك لم تُعد الدالة القيمة "b" لأنها مرتبطة بمفاتيح مختلفة في كل مصفوفة.
في هذا المثال، سترى أن الزوج الوحيد الموجود بكلتي المصفوفتين هو <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>: تحسب التقاطع بين المصفوفات.
* الدالة array_uinterest_assoc()‎: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي من الفهارس، كما أنها تقارن البيانات باستخدام دالة يحددها المستخدم.
* الدالة <code>[[PHP/array_uintersect_assoc|array_uintersect_assoc()‎]]</code>: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي من الفهارس، كما أنها تقارن البيانات باستخدام دالة يحددها المستخدم.
* الدالة array_interest_uassoc()‎: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي من الفهارس، كما أنها تقارن الفهارس باستخدام دالة يحددها المستخدم.
* الدالة <code>[[PHP/array_intersect_uassoc|array_intersect_uassoc()‎]]</code>: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي من الفهارس، كما أنها تقارن الفهارس باستخدام دالة يحددها المستخدم.
* الدالة array_uinterest_uassoc()‎: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي من الفهارس، كما أنها تقارن الفهارس والبيانات باستخدام دوال مختلفة يحددها المستخدم.
* الدالة <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()‎: تحسب الفرق بين المصفوفات مع استخدام تحقق إضافي من الفهارس.

مصادر