php الحلقات

do ... while

آخر تحيين: 10-11-2013

الحلقة for while


تعمل بنفس الطريقة كالحلقة while ، مع اختلاف واحد و مهم : في الحلقة while ، إذا كان الشرط خاطئا منذ البداية ، لا يتم الدخول نهائيا في الحلقة . كما قلت سابقا ، فحاسوبكم يقرأ دائما التعليمات من أعلى إلى أسفل ، عندما يصل إلى التعليمة while ، أول مايفعله هو التحقق من شرطها قبل الدخول . إذا كان الشرط خاطئا ، يدعها لحالها ،
أما بالنسبة للحلقة do...while . لا يتم التحقق من شرطها إلا عند نهاية الحلقة . أي أنه يتم الدخول في الحلقة و لو مرة واحدة ، حتى إذا كان الشرط خاطئا :

do : فعل أمر و تعني إفعل .
while : ما دام .
أي إفعل كذا و كذا ما دام الشرط صحيحا . مثال :

<?php
$i = 0;
do
{
    echo $i."<br>";
    $i++;
} while($i < 0);
?>

جرّبوا الشيفرة ، ستحصلون على رقم 0 . أي أنه تم الدخول إلى الحلقة و تنفيذ الشيفرة مرة واحدة رغم أن الشرط خاطيء منذ البداية .
لو جرّبنا نفس الشيفرة ، باستعمال while ، لما حصلنا على شيء . لأن الشرط خاطيء و لا يتم الدخول إلى الحلقة . و هذا هو الفرق الوحيد بين الحلقتين
، على كل حال ، الحلقة do...while ، قليلة الإستعمال و نادرا ما ستصادفونها بخلاف while