الفرق بين المراجعتين لصفحة: «PHP/each»
ط تغيير عنوان الصفحة |
ط تصحيح العناوين |
||
| سطر 6: | سطر 6: | ||
تحذير: أُلغيت هذه الدالة اعتبارًا من PHP 7.2.0. الاعتماد على هذه الدالة غير محبذ على الإطلاق. | تحذير: أُلغيت هذه الدالة اعتبارًا من PHP 7.2.0. الاعتماد على هذه الدالة غير محبذ على الإطلاق. | ||
= الوصف = | == الوصف == | ||
<syntaxhighlight lang="php"> | <syntaxhighlight lang="php"> | ||
array each ( array &$array ) | array each ( array &$array ) | ||
| سطر 13: | سطر 13: | ||
بعد تنفيذ الدالة <code>each()</code>، سيُترك مؤشر المصفوفة على العنصر التالي، أو بعد العنصر الأخير إذا كان قد وصل إلى نهاية المصفوفة. إذا كنت تريد المرور على المصفوفة مرة أخرى باستخدام <code>each()</code>، يجب عليك استخدام الدالة <code>[[PHP/Function/reset|reset()]]</code> أولًا. | بعد تنفيذ الدالة <code>each()</code>، سيُترك مؤشر المصفوفة على العنصر التالي، أو بعد العنصر الأخير إذا كان قد وصل إلى نهاية المصفوفة. إذا كنت تريد المرور على المصفوفة مرة أخرى باستخدام <code>each()</code>، يجب عليك استخدام الدالة <code>[[PHP/Function/reset|reset()]]</code> أولًا. | ||
= المعاملات = | == المعاملات == | ||
=== <code>array</code> === | === <code>array</code> === | ||
المصفوفة المُدخَلة. | المصفوفة المُدخَلة. | ||
= القيم المعادة = | == القيم المعادة == | ||
تُعيد هذه الدالة كلًا من المفتاح والقيمة الحاليْيَن من المصفوفة <code>array</code>. وتُعيد هذا الزوج على هيئة مصفوفة مكونة من أربعة عناصر، باستخدام المفاتيح 0 و 1 و key وvalue . تحتوي العناصر 0 و key على اسم المفتاح لعنصر المصفوفة، بينما تحتوي العناصر 1 وvalue على البيانات. | تُعيد هذه الدالة كلًا من المفتاح والقيمة الحاليْيَن من المصفوفة <code>array</code>. وتُعيد هذا الزوج على هيئة مصفوفة مكونة من أربعة عناصر، باستخدام المفاتيح 0 و 1 و key وvalue . تحتوي العناصر 0 و key على اسم المفتاح لعنصر المصفوفة، بينما تحتوي العناصر 1 وvalue على البيانات. | ||
إذا تخطى المؤشر الداخلي نهاية محتويات المصفوفة، فستُعيد الدالة <code>each()</code> القيمة <code>FALSE</code>. | إذا تخطى المؤشر الداخلي نهاية محتويات المصفوفة، فستُعيد الدالة <code>each()</code> القيمة <code>FALSE</code>. | ||
= أمثلة = | == أمثلة == | ||
المثال 1: أمثلة على الدالة <code>each()</code><syntaxhighlight lang="php"> | المثال 1: أمثلة على الدالة <code>each()</code><syntaxhighlight lang="php"> | ||
<?php | <?php | ||
| سطر 71: | سطر 71: | ||
تحذير: تقبل الدالة <code>each()</code> أيضًا الكائنات، ولكن قد تعرض نتائج غير متوقعة. لذلك لا يُنصح بالمرور على خصائص الكائن مع الدالة <code>each()</code>. | تحذير: تقبل الدالة <code>each()</code> أيضًا الكائنات، ولكن قد تعرض نتائج غير متوقعة. لذلك لا يُنصح بالمرور على خصائص الكائن مع الدالة <code>each()</code>. | ||
= انظر أيضًا = | == انظر أيضًا == | ||
* الدالة <code>[[PHP/Function/key|key()]]</code>: جلب مفتاح من مصفوفة. | * الدالة <code>[[PHP/Function/key|key()]]</code>: جلب مفتاح من مصفوفة. | ||
* الدالة <code>[[PHP/Function/list|list()]]</code>: بتعيين المتغيرات كما لو كانت مصفوفة. | * الدالة <code>[[PHP/Function/list|list()]]</code>: بتعيين المتغيرات كما لو كانت مصفوفة. | ||
| سطر 81: | سطر 81: | ||
* <code>[[PHP/OOP/iterations|Object Iteration]]</code>. | * <code>[[PHP/OOP/iterations|Object Iteration]]</code>. | ||
= مصادر = | == مصادر == | ||
* [http://php.net/manual/en/function.each.php صفحة الدالة each في توثيق PHP الرسمي]. | * [http://php.net/manual/en/function.each.php صفحة الدالة each في توثيق PHP الرسمي]. | ||
[[تصنيف:PHP]] | [[تصنيف:PHP]] | ||
[[تصنيف:PHP Function]] | [[تصنيف:PHP Function]] | ||
[[تصنيف:PHP Array]] | [[تصنيف:PHP Array]] | ||
مراجعة 03:38، 28 مارس 2018
(PHP 4, PHP 5, PHP 7)
تُعيد الدالة each() كلًا من المفتاح والقيمة المقابلة الحاليين من المصفوفة وتُحرك مؤشرها للأمام.
تحذير: أُلغيت هذه الدالة اعتبارًا من PHP 7.2.0. الاعتماد على هذه الدالة غير محبذ على الإطلاق.
الوصف
array each ( array &$array )
تُعيد هذه الدالة كلًا من المفتاح والقيمة الحاليْيَن من مصفوفة وتُحرك مؤشر المصفوفة للأمام.
بعد تنفيذ الدالة each()، سيُترك مؤشر المصفوفة على العنصر التالي، أو بعد العنصر الأخير إذا كان قد وصل إلى نهاية المصفوفة. إذا كنت تريد المرور على المصفوفة مرة أخرى باستخدام each()، يجب عليك استخدام الدالة reset() أولًا.
المعاملات
array
المصفوفة المُدخَلة.
القيم المعادة
تُعيد هذه الدالة كلًا من المفتاح والقيمة الحاليْيَن من المصفوفة array. وتُعيد هذا الزوج على هيئة مصفوفة مكونة من أربعة عناصر، باستخدام المفاتيح 0 و 1 و key وvalue . تحتوي العناصر 0 و key على اسم المفتاح لعنصر المصفوفة، بينما تحتوي العناصر 1 وvalue على البيانات.
إذا تخطى المؤشر الداخلي نهاية محتويات المصفوفة، فستُعيد الدالة each() القيمة FALSE.
أمثلة
المثال 1: أمثلة على الدالة each()
<?php
$foo = array("bob", "fred", "jussi", "jouni", "egon", "marliese");
$bar = each($foo);
print_r($bar);
?>
يحتوي المتغير bar$ الآن على أزواج المفاتيح والقيم التالية:
Array
(
[1] => bob
[value] => bob
[0] => 0
[key] => 0
)
<?php
$foo = array("Robert" => "Bob", "Seppo" => "Sepi");
$bar = each($foo);
print_r($bar);
?>
يحتوي المتغير bar$ الآن على أزواج المفاتيح والقيم التالية:
Array
(
[1] => Bob
[value] => Bob
[0] => Robert
[key] => Robert
)
تستخدم الدالة each() عادة بالتزامن مع الدالة list() للمرور بالمصفوفة، وإليك مثالٌ على ذلك:
المثال 2: مثال على المرور بمصفوفة باستخدام الدالة each()
<?php
$fruit = array('a' => 'apple', 'b' => 'banana', 'c' => 'cranberry');
reset($fruit);
while (list($key, $val) = each($fruit)) {
echo "$key => $val\n";
}
?>
سوف تكون مُخرجات المثال أعلاه كالتالي:
a => apple
b => banana
c => cranberry
تنبيه: نظرًا لأن تعيين مصفوفة إلى متغير آخر يعيد تعيين مؤشر المصفوفة الأصلي، فإن المثال السابق قد يتسبب في حدوث حلقة لا نهائية لو قمنا بتعيين fruit$ إلى متغير آخر داخل الحلقة.
تحذير: تقبل الدالة each() أيضًا الكائنات، ولكن قد تعرض نتائج غير متوقعة. لذلك لا يُنصح بالمرور على خصائص الكائن مع الدالة each().
انظر أيضًا
- الدالة
key(): جلب مفتاح من مصفوفة. - الدالة
list(): بتعيين المتغيرات كما لو كانت مصفوفة. - الدالة
current(): إعادة العنصر الحالي في مصفوفة. - الدالة
reset(): تحريك المؤشر الداخلي لمصفوفة إلى أول عنصر. - الدالة
next(): تحريك المؤشر الداخلي لمصفوفة إلى الأمام. - الدالة
prev(): إرجاع مؤشر المصفوفة الداخلي إلى الخلف. - حلقة
foreach. Object Iteration.