حلقة Foreach
جزء من قسم الأساسيات في رحلة PHP على Coddy. الدرس 49 من 71.
عند العمل مع array، تحتاج غالبًا إلى المرور عبر كل عنصر واحدًا تلو الآخر. وعلى الرغم من أنه يمكنك استخدام حلقة for مع عدّاد فهرس، فإن PHP توفر حلًا أكثر وضوحًا: حلقة foreach.
حلقة foreach في PHP مخصّصة للمرور عبر المصفوفات. تحتوي العديد من اللغات على حلقة مماثلة، وفي PHP تتولى عملية العد نيابةً عنك وتمنحك وصولًا مباشرًا إلى كل عنصر.
<?php
$fruits = ["apple", "banana", "cherry"];
foreach ($fruits as $fruit) {
echo $fruit . "\n";
}
?>يُخرج هذا:
apple
banana
cherryالبنية النحوية بسيطة: foreach ($array as $item). في كل تكرار، يتم تعيين العنصر التالي من المصفوفة إلى $item، ويمكنك استخدامه داخل جسم الحلقة.
قارن هذا بتحقيق النتيجة نفسها باستخدام حلقة for:
<?php
$fruits = ["apple", "banana", "cherry"];
for ($i = 0; $i < count($fruits); $i++) {
echo $fruits[$i] . "\n";
}
?>إصدار foreach أقصر وأسهل في القراءة. لا تحتاج إلى إدارة متغير فهرس أو القلق بشأن طول array؛ إذ تتولى PHP كل ذلك نيابةً عنك.
التحدي
سهلاقرأ سطرًا واحدًا من الإدخال يحتوي على قائمة أرقام مفصولة بفواصل (مثل 10,25,5,30,15).
استخدم حلقة foreach للتكرار عبر array وحساب sum جميع الأرقام. اطبع sum الكلي.
المثال 1:
إذا كان input هو 10,25,5,30,15، فيجب أن يكون Output:
85المثال 2:
إذا كان input هو 1,2,3,4,5، فيجب أن يكون Output:
15المثال 3:
إذا كان input هو 100,200,300، فيجب أن يكون Output:
600جرّب بنفسك
<?php
// قراءة المدخلات
$input = trim(fgets(STDIN));
$numbers = explode(',', $input);
// TODO: اكتب الكود الخاص بك أدناه لحساب المجموع باستخدام حلقة foreach
$sum = 0;
// إخراج النتيجة
echo $sum;
?>يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4معاملات المقارنة والمنطق
معاملات المقارنةالمساواة والتطابقالمعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيط2المتغيرات وأنواع البيانات
الأرقامالنصوص وعلامات الاقتباسالقيم المنطقية (Booleans)قواعد التسميةملخص - تهيئة المتغيراتالمتغيرات الفارغةدمج النصوصاستقبال مدخلات المستخدمتحويل أنواع البيانات5المنطق الشرطي
جملة Ifجملة If - Elseالعامل الثلاثي (Ternary Operator)عامل Null Coalescingجملة Switchمراجعة - اتخاذ القرارات8الحلقات التكرارية
حلقة Forحلقة Whileحلقة Foreachالتكرار باستخدام المفاتيح والقيمجملة Breakجملة Continueمراجعة - التكرار عبر البيانات3المعاملات الأساسية
المعاملات الحسابيةمعامل باقي القسمةمعامل الأسالتعيين المركبالزيادة والنقصانأسبقية المعاملاتمراجعة - الحسابات البسيطةمعاملات النصوصتدرّب بنفسك: مترجم PHP عبر الإنترنت