PHP/array replace

من موسوعة حسوب
< PHP
مراجعة 10:17، 15 مارس 2018 بواسطة Khaled-yassin (نقاش | مساهمات) (تعديل التنسيق)
اذهب إلى التنقل اذهب إلى البحث

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

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

الوصف

mixed array_reduce ( array $array , callable $callback [, mixed $initial = NULL ] )

تطبق الدالة array_reduce()‎ بشكل تكراري دالة callback على عناصر array، وذلك لاختزال المصفوفة إلى قيمة واحدة.

المعاملات

array

المصفوفة المُدخلة.

callback

mixed callback ( mixed $carry , mixed $item )

carry

يحتفظ بالقيمة المُعادة من التكرار السابق؛ ويحمل قيمة initial في حالة التكرار الأول.

item

يحمل قيمة التكرار الحالي.

initial

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

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

تُعيد القيمة الناتجة.

تُعيد الدالة array_reduce()‎ القيمة NULL إذا كانت المصفوفة فارغة ولم يمرر المعامل initial.

سجل التغييرات

الإصدار الوصف
5.3.0 تغيير initial للسماح بالنوع المختلط mixed، والذي كان عدد صحيح integer في وقت سابق.

أمثلة

المثال 1: مثال على الدالة array_reduce()‎

<?php
function sum($carry, $item)
{
   $carry += $item;
   return $carry;
}
function product($carry, $item)
{
   $carry *= $item;
   return $carry;
}
$a = array(1, 2, 3, 4, 5);
$x = array();
var_dump(array_reduce($a, "sum")); // int(15)
var_dump(array_reduce($a, "product", 10)); // int(1200), لأنَّ: 10*1*2*3*4*5
var_dump(array_reduce($x, "sum", "No data to reduce")); // string(17) "No data to reduce"
?>
انظر أيضًا

مصادر

  • صفحة الدالة array_reduce()‎ في توثيق PHP الرسمي.