while في PHP

من موسوعة حسوب
< PHP
مراجعة 03:49، 4 أبريل 2018 بواسطة عبد اللطيف ايمش (نقاش | مساهمات) (نقل عبد اللطيف ايمش صفحة PHP/Control Structures/while إلى PHP/while: إعادة هيكلة التوثيق)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

(PHP 4, PHP 5, PHP 7)

تعد حلقات while التكرارية أبسط أنواع الحلقات في PHP، وتعمل بطريقة مماثلة لنظيرتها في لغة C، والصيغة الأساسية لعبارة while هي:

while (expr)
    statement

تؤدي عبارة while وظيفةً بسيطةً، وهي تنفيذ العبارة أو العبارات التي تحتضنها بصورة متكررة ما دامت العبارة الشرطية المرتبطة بحلقة while تؤول إلى TRUE. تتحقّق اللغة من قيمة التعبير في بداية كل دورة، لهذا لن يؤدي تغيير القيمة أثناء عملية التنفيذ إلى إيقاف الدورة بل ستكمل الشيفرة عملها إلى نهاية الدورة (تحتسب الدورة في كل مرّة تنفّذ فيها PHP العبارات ضمن الحلقة التكرارية). في بعض الأحيان، إن كانت نتيجة تعبير while هي FALSE فلن تنفّذ الشيفرة التي تحتضنها هذه العبارة على الإطلاق.

يمكن جمع عدد من العبارات -كما هو الحال مع عبارة if- ضمن حلقة while واحدة وذلك بإحاطة مجموعة العبارات بالأقواس المعقوفة، أو باستخدام الصيغة البديلة:

while (expr):
    statement
    ...
endwhile;

الأمثلة التالية متطابقة، وستطبع سلسلة الأعداد 1 إلى 10. (لاحظ أنّ القيمة المطبوعة في المثال الأول هي قيمة المتغير ‎$i قبل الزيادة [الزيادة اللاحقة]).

<?php
/* المثال 1 */

$i = 1;
while ($i <= 10) {
    echo $i++; 

/* المثال 2 */

$i = 1;
while ($i <= 10):
    echo $i;
    $i++;
endwhile;
?>

مصادر