المصفوفات في PHP

من موسوعة حسوب
< PHP
مراجعة 08:54، 12 أبريل 2018 بواسطة Khaled-yassin (نقاش | مساهمات) (←‏shuffle()‎)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

تسمح لك هذه الدوال بالتعامل مع المصفوفات وتعديلها بطرائق عديدة. المصفوفات عنصر أساسي لتخزين وإدارة والتعامل مع مجموعاتٍ من المتغيرات.

تدعم لغة PHP المصفوفات أحادية ومتعددة الأبعاد، ويمكن أن ينتجها المستخدم بنفسه أو أن يستخدم دوالًا أخرى لإنشائها. توجد كذلك دوال متخصصة للتعامل مع قواعد البيانات وملأ المصفوفات من نواتج استعلامات قواعد البيانات، وتعيد الكثير من الدوال مصفوفاتٍ أيضًا.

رجاءً تصفَّح نوع البيانات الخاص بالمصفوفات من هذا التوثيق للحصول على شرح تفصيلي عن كيفية استعمال المصفوفات في لغة PHP.

انظر أيضًا إلى صفحة معاملات المصفوفات للتعرف على طرائق أخرى حول كيفية التعامل مع المصفوفات. 

ترتيب المصفوفات

تحتوي لغة PHP على الكثير من الدوال التي تتعامل مع ترتيب المصفوفات، الفرق بين تلك الدوال مشروحٌ في هذه الصفحة.

array_change_key_case()‎

تغير الدالة array_change_key_case()‎ حالة الأحرف اللاتينية لكل المفاتيح الموجودة بالمصفوفة.

array_chunk()‎

تقسم الدالة array_chunk()‎ المصفوفة إلى أجزاء صغيرة. 

array_column()‎

تعيد الدالة array_column()‎ القيم المتواجدة بعمود واحد للمصفوفة التي تُمرَّر كمعامل للدالة. 

array_combine()‎

تنشئ الدالة array_combine()‎ مصفوفةً جديدةً عن طريق استخدام المفاتيح من أحد المصفوفات والقيم من مصفوفة أخرى.

array_count_values()‎

تحصي الدالة array_count_values()‎ عدد مرات تكرار كل قيمة موجودة داخل المصفوفة.

array_diff_assoc()‎

تحسب الدالة arr‎ay_diff_assoc()‎ الفرق بين عدة مصفوفات مع أخذ مفاتيح المصفوفات بالحسبان.

array_diff_key()‎

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

array_diff_uassoc()‎

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

array_diff_ukey()‎

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

array_diff()‎

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

array_fill_keys()‎

تملأ الدالة array_fill_keys()‎ المصفوفة بقيم، مع تحديد المفاتيح المستخدمة.

array_fill()‎

تملأ الدالة array_fill()‎ المصفوفة بقيم محددة.

array_filter()‎

تُرشِّح الدالة array_filter()‎ عناصر المصفوفة باستخدام دالة يحددها المستخدم.

array_flip()‎

تستبدل الدالة array_flip()‎ كل مفاتيح المصفوفة بالقيم المرتبطة معها.

array_intersect_assoc()‎

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

array_intersect_key()‎

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

array_intersect_uassoc()‎

تحسب الدالة array_intersect_uassoc()‎ التقاطع (intersection) بين المصفوفات مع استخدام تحقق إضافي للفهارس، وتستخدم دالة يحددها المستخدم لمقارنة الفهارس.

array_intersect_ukey()‎

تحسب الدالة array_intersect_ukey()‎ التقاطع (intersection) بين المصفوفات باستخدام دالة يحددها المستخدم لمقارنة المفاتيح.

array_intersect()‎

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

array_key_exists()‎

تتحقق الدالة array_key_exists()‎ من وجود المفتاح أو الفهرس داخل المصفوفة.

array_keys()‎

تعيد الدالة array_keys()‎ كل مفاتيح المصفوفة أو جزءًا منها.

array_map()‎

تنفذ الدالة array_map()‎ دالةً أخرى يحددها المستخدم على كل عنصر موجود في المصفوفات المُمرََرَة.

array_merge_recursive()‎

تدمج الدالة array_merge_recursive()‎ مصفوفتين أو أكثر بشكل تكراري (recursively).

array_merge()‎

تدمج الدالة array_merge()‎ مصفوفتين أو أكثر.

array_multisort()‎

تُرتِّب الدالة array_multisort()‎ عدة مصفوفات أو المصفوفات متعددة الأبعاد.

array_pad()‎

تملأ الدالة array_pad()‎ المصفوفة بعناصر بقيمة ما لتبلغ الطول المحدد.

array_pop()‎

تزيل الدالة array_pop()‎ العنصر الأخير في نهاية المصفوفة وتُعيد قيمته.

array_product()‎

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

array_push()‎

تدفع الدالة array_push()‎ عنصرًا واحدًا أو أكثر إلى نهاية المصفوفة.

array_rand()‎

تختار الدالة array_rand()‎ واحدًا أو أكثر من عناصر المصفوفة عشوائيًا.

array_reduce()‎

تختزل الدالة array_reduce()‎ المصفوفة إلى قيمة واحدة باستخدام دالة مُعرَّفة من المستخدم callback.

array_replace_recursive()‎

تستبدل الدالة array_replace_recursive()‎ عناصر المصفوفات المُمررة إلى المصفوفة الأولى بشكل متكرر.

array_replace()‎

تستبدل الدالة array_replace()‎ عناصر المصفوفات المُمررة إلى داخل المصفوفة الأولى.

array_reverse()‎

تُعيد الدالة array_reverse()‎ المصفوفة وعناصرها مرتبةٌ ترتيبًا معكوسًا.

array_search()‎

تبحث الدالة array_search()‎ في المصفوفة عن قيمة محددة وتعيد مفتاح أول عنصر يحمل هذه القيمة إذا نجح.

array_shift()‎

تُزيل الدالة array_shift()‎ عنصرًا من بداية المصفوفة وتُعيد قيمته.

array_slice()‎

تستخرج الدالة array_slice()‎ قسمًا من المصفوفة.

array_splice()‎

تُزيل الدالة array_splice()‎ جزءًا من المصفوفة وتستبدله بشيء آخر.

array_sum()‎

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

array_udiff_assoc()‎

تحسب الدالة array_udiff_assoc()‎ الفرق بين المصفوفات مع استخدام تحقق إضافي بمقارنة الفهارس، وتقارن البيانات باستخدام دالة callback مُعرَّفة من المستخدم .

array_udiff_uassoc()‎

تحسب الدالة array_udiff_uassoc()‎ الفرق بين المصفوفات مع استخدام تحقق إضافي بمقارنة الفهارس، ومقارنة البيانات والفهارس بواسطة دالة callback مُعرّفة من المستخدم.

array_udiff()‎

تحسب الدالة array_udiff()‎ الفرق بين المصفوفات باستخدام دالة callback مُعرّفة من المستخدم للمقارنة بين البيانات.

array_uintersect_assoc()‎

تحسب الدالة array_uintersect_assoc()‎ تقاطع المصفوفات مع استخدام تحقق إضافي بمقارنة الفهارس، ومقارنة البيانات بواسطة دالة callback مُعرّفة من المستخدم.

array_uintersect_uassoc()‎

تحسب الدالة array_uintersect_uassoc()‎ تقاطع المصفوفات مع استخدام تحقق إضافي بمقارنة الفهارس، وتقارن البيانات والفهارس بواسطة دوال callback منفصلة مُعرّفة من المستخدم.

array_uintersect()‎

تحسب الدالة array_uintersect()‎ تقاطع المصفوفات، ,وتقارن البيانات بواسطة دالة callback مُعرّفة من المستخدم.

array_unique()‎

تحذف الدالة array_unique()‎ القيم المكررة من المصفوفة.

array_unshift()‎

تضيف الدالة array_unshift()‎ عنصرًا واحدًا أو أكثر لبداية المصفوفة.

array_values()‎

تُعيد الدالة array_values​​()‎ جميع قيم عناصر المصفوفة.

array_walk_recursive()‎

تُطبّق الدالة ()‎array_walk_recursive الدالة callback المُقدّمة من المستخدم تكراريًا على كل عنصر في المصفوفة.

array_walk()‎

تُطبّق الدالة array_walk()‎ الدالة المُقدمة من المستخدم على كل عنصر في المصفوفة.

array()‎

تنشئ الدالة array()‎ مصفوفة جديدة.

arsort()‎

تُرتَّب الدالة ()‎arsort عناصر المصفوفة بترتيب عكسي، وتحافظ على اقتران الفهارس مع القيم المرتبطة بها.

asort()‎

تُرتِّب الدالة asort()‎ عناصر المصفوفة وتحافظ على اقتران الفهارس مع القيم المرتبطة بها.

compact()‎

تنشئ الدالة compact()‎ مصفوفة تحتوي على متغيرات وقيمها.

count()‎

تُحصي الدالة count()‎ جميع العناصر في مصفوفة، أو شيء ما في كائن.

current()‎

تعيد الدالة current()‎ العنصر الحالي في مصفوفة.

each()‎

تُعيد الدالة each()‎ كلًا من المفتاح والقيمة المقابلة الحاليين من المصفوفة وتُحرك مؤشرها للأمام.

end()‎

تحرك الدالة end()‎ المؤشر الداخلي للمصفوفة إلى آخر عنصر.

extract()‎

تستخلص الدالة extract()‎ المتغيرات من مصفوفة ما وتدخلها في جدول الرموز الحالي.

in_array()‎

تتحقق الدالة in_array()‎ من وجود قيمة ما في مصفوفة.

key_exists()‎

تعد الدالة key_exists()‎ اسمًا مستعارًا للدالة array_key_exists()‎

key()‎

تُعيد الدالة key()‎‎ مفتاحًا ما من مصفوفة.

krsort()‎

تُرتب الدالة krsort()‎ المصفوفة حسب المفتاح بترتيب عكسي.

ksort()‎

تُرتب الدالةُ ksort()‎‎ المصفوفةَ حسب المفتاح.

list()‎

تُعيّن الدالة list()‎‎‎ المتغيرات كما لو كانت تشكل مصفوفة.

natcasesort()‎

تُرتّب الدالة natcasesort()‎‎‎‎‎ مصفوفة باستخدام خوارزمية "الترتيب الطبيعي" غير الحساسة لحالة الحرف.

natsort()‎

تُرتّب الدالة natsort()‎‎‎‎‎‎‎ عناصر المصفوفة باستخدام خوارزمية "الترتيب الطبيعي".

next()‎

تحرك الدالة next()‎‎ المؤشر الداخلي للمصفوفة إلى الأمام.

pos()‎

تُعد الدالة pos()‎ اسمًا مستعارًا للدالة current()‎.

prev()‎

تُرجِع الدالة prev()‎‎ مؤشر المصفوفة الداخلي إلى الخلف.

range()‎

تنشئ الدالة range()‎‎‎‎‎‎‎‎‎‎ مصفوفةً تحتوي على مجال من العناصر.

reset()‎

تُحرك الدالة reset()‎‎ المؤشر الداخلي لمصفوفة إلى أول عنصر.

rsort()‎

تُرتب الدالة rsort()‎‎‎‎‎‎‎‎‎‎‎ مصفوفة بترتيب عكسي.

shuffle()‎

تخلط الدالة shuffle()‎ عناصر المصفوفة.

sizeof()‎

تُعد الدالة sizeof()‎‎‎‎‎‎‎‎‎‎‎‎ اسمًا مستعارًا للدالة count()‎

sort()‎

تُرتب الدالة sort()‎‎‎‎‎‎‎‎‎‎‎‎‎‎ عناصر المصفوفة.

uasort()‎

تُرتب الدالة uasort()‎ مصفوفة باستخدام دالة مقارنة معرفة من قبل المستخدم وتُحفاظ على ارتباط الفهارس بالقيم المقابلة.

uksort()‎

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

usort()‎

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

مصادر