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

من موسوعة حسوب
< PHP
لا ملخص تعديل
ط نقل عبد اللطيف ايمش صفحة PHP/Function/array-diff إلى PHP/array diff: إعادة هيكلة التوثيق
 
(3 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 53: سطر 53:


== انظر أيضًا ==
== انظر أيضًا ==
* الدالة <code>[[PHP/Function/array-diff-assoc|array_diff_assoc()‎]]</code>: تحسب الاختلاف بين المصفوفات مع استخدام تحقق إضافي بمقارنة الفهارس.
* الدالة <code>[[PHP/array_diff_assoc|array_diff_assoc()‎]]</code>: تحسب الاختلاف بين المصفوفات مع استخدام تحقق إضافي بمقارنة الفهارس.
* الدالة <code>[[PHP/Function/array-intersect|array_intersect()‎]]</code>: تحسب التقاطع (intersection) بين المصفوفات.
* الدالة <code>[[PHP/array_intersect|array_intersect()‎]]</code>: تحسب التقاطع (intersection) بين المصفوفات.
* الدالة <code>[[PHP/Function/array-intersect-assoc|array_intersect_assoc()‎]]</code>: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي بمقارنة الفهارس.
* الدالة <code>[[PHP/array_intersect_assoc|array_intersect_assoc()‎]]</code>: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي بمقارنة الفهارس.


== مصادر ==
== مصادر ==

المراجعة الحالية بتاريخ 03:49، 4 أبريل 2018

(PHP 4 >= 4.0.1, PHP 5, PHP 7)

تحسب الدالة array_diff()‎ الفرق بين عدة مصفوفات.

الوصف

array array_diff ( array $array1 , array $array2 [, array $... ] )

تقارن الدالة array_diff()‎ المصفوفة array1 بمصفوفة أخرى أو أكثر و تعيد القيم الموجودة فيها و التي ليست موجودة في المصفوفات الأخرى.

المعاملات

array1

المصفوفة التي ستقارن الدالة منها.

array2

المصفوفة التي ستقارن الدالة بها.

مزيد من المصفوفات لتقارن الدالة بها.

القيم المعادة

تعيد الدالة مصفوفةً جديدةً تحتوي على كل العناصر الموجودة في المصفوفة الأولى والتي ليست موجودةً في أيٍ من المصفوفات الأخرى.

أمثلة

المثال 1: مثال بسيط عن استخدام الدالة array_diff()

<?php
$array1 = array("a" => "green", "red", "blue", "red");
$array2 = array("b" => "green", "yellow", "red");
$result = array_diff($array1, $array2);

print_r($result);
?>

العناصر المكررة بالمصفوفة ‎$array1 تعامل كلها بنفس الطريقة.

نتيجة المثال السابق:

Array
(
    [1] => blue
)

ملاحظات

يُعتبر عنصران من المصفوفات متساويان إذا و فقط إذا كان ‎(string) $elem1 === (string) $elem2. بكلمات أخرى، إذا كان التمثيل النصي لهما متماثل تمامًا.

تتحقق هذه الدالة من بعد واحد فقط للمصفوفات متعددة الأبعاد. بالطبع يمكنك التحقق من أبعاد أعمق باستخدام array_diff_ukey($array1[0], $array2[0], 'callback_func')‎ على سبيل المثال.

انظر أيضًا

  • الدالة array_diff_assoc()‎: تحسب الاختلاف بين المصفوفات مع استخدام تحقق إضافي بمقارنة الفهارس.
  • الدالة array_intersect()‎: تحسب التقاطع (intersection) بين المصفوفات.
  • الدالة array_intersect_assoc()‎: تحسب التقاطع بين المصفوفات مع استخدام تحقق إضافي بمقارنة الفهارس.

مصادر