- حلقة
for
: تُستخدم عندما يكون عدد مرات التكرار معروفًا مسبقًا. - حلقة
while
: تُستخدم عندما يكون التكرار مشروطًا بتحقق شرط معين. - حلقة
do...while
: مشابهة لحلقةwhile
، ولكنها تضمن تنفيذ كتلة الكود مرة واحدة على الأقل.
سأشرح كل نوع بالتفصيل مع أمثلة:
1. حلقة for
:
تتكون حلقة for
من ثلاثة أجزاء رئيسية:
- التهيئة (Initialization): تُستخدم لتهيئة متغير العداد.
- الشرط (Condition): يُحدد متى يجب أن تتوقف الحلقة.
- التحديث (Increment/Decrement): يُستخدم لتحديث قيمة متغير العداد في كل دورة.
for ($i = 0; $i < 10; $i++) { echo "الرقم: " . $i . "<br>";}
في هذا المثال:
$i = 0
: يتم تهيئة المتغير$i
بالقيمة 0.$i < 10
: يتم فحص الشرط، إذا كان$i
أصغر من 10، تستمر الحلقة.$i++
: يتم زيادة قيمة$i
بمقدار 1 في نهاية كل دورة.
سيقوم هذا الكود بطباعة الأرقام من 0 إلى 9.
2. حلقة while
:
تستمر حلقة while
في تنفيذ كتلة الكود طالما أن الشرط المحدد صحيح.
$i = 0;while ($i < 10) { echo "الرقم: " . $i . "<br>"; $i++;}
هذا المثال مطابق للمثال السابق باستخدام حلقة for
. يجب الانتباه إلى تحديث قيمة المتغير $i
داخل الحلقة، وإلا ستدخل الحلقة في حلقة لا نهائية.
3. حلقة do...while
:
تشبه حلقة do...while
حلقة while
، ولكنها تضمن تنفيذ كتلة الكود مرة واحدة على الأقل، حتى لو كان الشرط غير صحيح من البداية.
$i = 10;do { echo "الرقم: " . $i . "<br>"; $i++;} while ($i < 10);
في هذا المثال، سيتم طباعة الرقم 10 مرة واحدة على الرغم من أن الشرط $i < 10
غير صحيح من البداية.
4. حلقة foreach
:
تُستخدم حلقة foreach
للتكرار على عناصر المصفوفات.
$colors = array("أحمر", "أخضر", "أزرق");
foreach ($colors as $color) { echo "اللون: " . $color . "<br>";}
في هذا المثال، سيتم طباعة كل لون من المصفوفة $colors
. يمكنك أيضًا استخدام foreach
للحصول على مفتاح العنصر:
foreach ($colors as $key => $color) { echo "المفتاح: " . $key . "، اللون: " . $color . "<br>";}
استخدامات الحلقات:
تُستخدم الحلقات في العديد من المواقف، مثل:
- معالجة البيانات في المصفوفات.
- قراءة البيانات من الملفات.
- إنشاء جداول HTML ديناميكية.
- تنفيذ عمليات متكررة.
أتمنى أن يكون هذا الشرح واضحًا. إذا كان لديك أي أسئلة أخرى، فلا تتردد في طرحها.