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

من موسوعة حسوب
< PHP
ط نقل عبد اللطيف ايمش صفحة PHP/Function/array-walk-recursive إلى PHP/array walk recursive: إعادة هيكلة التوثيق
 
(4 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 2: سطر 2:
(PHP 5, PHP 7)
(PHP 5, PHP 7)


تُطبّق الدالة <code>()‎array_walk_recursive</code> الدالة [[PHP/Types/callable|callback]] المُقدّمة من المستخدم تكراريًا على كل عنصر في المصفوفة.
تُطبّق الدالة <code>()‎array_walk_recursive</code> الدالة [[PHP/callable|callback]] المُقدّمة من المستخدم تكراريًا على كل عنصر في المصفوفة.


== الوصف ==
== الوصف ==
<syntaxhighlight lang="php">
<syntaxhighlight lang="php">
bool array_walk_recursive ( array &$array , callable $callback [, mixed $userdata = NULL ] )
bool array_walk_recursive ( array &$array , callable $callback [, mixed $userdata = NULL ] )
</syntaxhighlight>تُطبّق الدالة <code>array_walk_recursive()‎</code> دالة [[PHP/Types/callable|callback]] المُعرّفة بواسطة المستخدم على كل عنصر في المصفوفة <code>array</code>. وسوف تتكرر هذه الدالة داخل المصفوفات المتشعبة.
</syntaxhighlight>تُطبّق الدالة <code>array_walk_recursive()‎</code> دالة [[PHP/callable|callback]] المُعرّفة بواسطة المستخدم على كل عنصر في المصفوفة <code>array</code>. وسوف تتكرر هذه الدالة داخل المصفوفات المتشعبة.


== المعاملات ==
== المعاملات ==
سطر 17: سطر 17:
عادةً ما تحتاج الدالة <code>callback</code> المُعرّفة من المستخدم إلى معامليْن. الأول قيمة معامل المصفوفة <code>array</code>، والثاني المفتاح أو الفهرس.
عادةً ما تحتاج الدالة <code>callback</code> المُعرّفة من المستخدم إلى معامليْن. الأول قيمة معامل المصفوفة <code>array</code>، والثاني المفتاح أو الفهرس.


ملاحظة: إذا لزم أن تعمل الدالة <code>callback</code> مع القيم الفعلية للمصفوفة، فيجب تعيين أول معامل لدالة <code>callback</code> [[PHP/References|كمرجع]]. بعد ذلك، ستُجرى أي تغييرات على هذه العناصر في المصفوفة الأصلية نفسها.
ملاحظة: إذا لزم أن تعمل الدالة <code>callback</code> مع القيم الفعلية للمصفوفة، فيجب تعيين أول معامل لدالة <code>callback</code> [[PHP/references|كمرجع]]. بعد ذلك، ستُجرى أي تغييرات على هذه العناصر في المصفوفة الأصلية نفسها.


=== <code>userdata</code> ===
=== <code>userdata</code> ===
سطر 45: سطر 45:


== أنظر أيضًا ==
== أنظر أيضًا ==
* الدالة <code>[[PHP/Function/array-walk|array_walk()‎]]</code>: تطبيق دالة معرَّفة  من المستخدم على كل عنصر في المصفوفة.
* الدالة <code>[[PHP/array_walk|array_walk()‎]]</code>: تطبيق دالة معرَّفة  من المستخدم على كل عنصر في المصفوفة.
* معلومات حول النوع [[PHP/Types/callable|callback]].
* معلومات حول النوع [[PHP/callable|callback]].


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

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

(PHP 5, PHP 7)

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

الوصف

bool array_walk_recursive ( array &$array , callable $callback [, mixed $userdata = NULL ] )

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

المعاملات

array

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

callback

عادةً ما تحتاج الدالة callback المُعرّفة من المستخدم إلى معامليْن. الأول قيمة معامل المصفوفة array، والثاني المفتاح أو الفهرس.

ملاحظة: إذا لزم أن تعمل الدالة callback مع القيم الفعلية للمصفوفة، فيجب تعيين أول معامل لدالة callback كمرجع. بعد ذلك، ستُجرى أي تغييرات على هذه العناصر في المصفوفة الأصلية نفسها.

userdata

إذا توافر معامل userdata الاختياري، فسيمرر كمعامل ثالث إلى callback.

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

تُعيد الدالة array_walk_recursive()‎ القيمة TRUE عند نجاحها أو FALSE عند فشل تنفيذها.

أمثلة

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

<?php
$sweet = array('a' => 'apple', 'b' => 'banana');
$fruits = array('sweet' => $sweet, 'sour' => 'lemon');

function test_print($item, $key)
{
    echo "$key holds $item\n";
}

array_walk_recursive($fruits, 'test_print');
?>

سوف تكون مُخرجات المثال أعلاه كالتالي:

a holds apple
b holds banana
sour holds lemon

قد تلاحظ أن المفتاح sweet لا يُعرض أبدًا. ولن يُمرَّر أيُّ مفتاحٍ يحمل مصفوفة إلى الدالة.

أنظر أيضًا

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

مصادر