PHP بينما البيان هو أبسط حلقة في PHP. إنه يعمل تمامًا كما هو الحال في C. PHP بينما تقوم العبارة بشكل متكرر بتنفيذ العبارات الموجودة في النطاق طالما أن التعبير صحيح.

PHP بينما بناء جملة البيان هو كما يلي:

while (condition) {
	statement;
}

PHP بينما يستفسر البيان أولاً عن الشرط. إذا كان الشرط صحيحا، يتم تنفيذ البيانات. ثم تعود الرموز إلى البداية ويتم إعادة تقييم التعبير. إذا كان لا يزال صحيحا، يتم تشغيل الرموز مرة أخرى. تستمر هذه الحلقة حتى يعود الشرط خطأ. إذا أعاد الشرط خطأ، فسيتم إنهاء الحلقة ولن يتم تنفيذ التعليمات البرمجية التالية.

PHP بينما إذا كان هناك سطر واحد من التعليمات البرمجية في البيان، فليس من الضروري استخدام الأقواس. ومع ذلك، إذا كان هناك أكثر من سطر واحد من التعليمات البرمجية، فيجب استخدام الأقواس.

while (condition)
statement;

PHP بينما

أدناه PHP بينما في المثال، قمنا بطباعة الأرقام من 1 إلى 5. في هذا المثال، قمنا بتعريف متغير اسمه $i وأعطيناه البيانات 1. PHP بينما أنشأنا الحلقة وحددنا الشرط إذا كان $i أقل من 5. ضمن نطاق الحلقة، قمنا بطباعة الأرقام كـ "Number: $i" مع echo وقمنا بتعيينها لإعطاء مسافة في كل مرة يتم فيها إرجاع الحلقة بـ " ". بعد ذلك، باستخدام $i++، تأكدنا من أن بيانات المتغير $i تزداد بمقدار 1 في كل مرة يتم فيها إرجاع الحلقة.

نصيحة: إذا لم نتأكد من أن البيانات (الرقم) تزيد أو تنقص - باختصار يتغير الرقم - في كل مرة تدور فيها الحلقات، سنواجه حالة حلقة لا نهائية. نظرًا لأن الشرط في الحلقة سيعود دائمًا صحيحًا، فإنه يستمر في التشغيل حتى يتعطل المتصفح بسبب الاستخدام المفرط للموارد أو يوقف الخادم البرنامج النصي عند الحد الأقصى لوقت التنفيذ (راجع: الحد الأقصى لوقت التنفيذ في php).

$i = 1;
while ($i < 5) {
  echo "Sayı: {$i} 
";
  $i++;
}
/* 
* Çıktı: 
Sayı: 1
Sayı: 2
Sayı: 3
Sayı: 4
*/

أدناه PHP بينما في المثال، قمنا بطباعة الأرقام من 60 إلى 120 (بما في ذلك 120) عن طريق تخطي 10. في هذا المثال، قمنا بتعريف متغير اسمه $x وأعطينا البيانات 60. PHP بينما أنشأنا الحلقة وحددنا الشرط إذا كان $x أقل من أو يساوي 120. ضمن نطاق الحلقة، قمنا بطباعة الأرقام كـ "Number: $x" مع صدى وقمنا بتعيينها لإعطاء مسافة في كل مرة تعود فيها الحلقة بـ " ". بعد ذلك، باستخدام $x+=10، تأكدنا من أن بيانات المتغير $x زادت بمقدار 10 في كل مرة يتم فيها إرجاع الحلقة.

$x = 60;
while ($x <= 120) {
    echo "Sayı: {$x} 
";
    $x += 10;
}
/*
* Çıktı:
Sayı: 60
Sayı: 70
Sayı: 80
Sayı: 90
Sayı: 100
Sayı: 110
Sayı: 120
*/

PHP بينما بناء الجملة البديل

هناك إمكانية لبناء جملة (نقطتين) بديلة في بيانات التحكم PHP. PHP بينما بناء الجملة البديل للبيان هو كما يلي. والفرق الوحيد عن بناء الجملة الافتراضي مع الأقواس المتعرجة هو أننا نضيف نقطتين بعد العبارة بدلاً من فتح الأقواس المتعرجة، وبدلاً من إغلاق الأقواس المتعرجة عند الانتهاء من الرموز، endwhile؛ نضيف البيان.

while (condition):
	statement;
endwhile;

PHP بينما يمكننا أن نمثل بناء الجملة البديل على النحو التالي.

أدناه PHP بينما في المثال، قمنا بطباعة الأرقام من 25 إلى 50 بتخطي 5. في هذا المثال، قمنا بتعريف متغير اسمه $x وأعطينا البيانات 25، وقمنا بتعريف متغير اسمه $y وأعطينا البيانات 50. PHP بينما لقد أنشأنا الحلقة وحددنا الشرط إذا كان $x أقل من $y. ضمن نطاق الحلقة، قمنا بطباعة الأرقام كـ "Number: $x" مع الصدى وقمنا بتعيينها لإعطاء مسافة في كل مرة تعود فيها الحلقة بـ " ". بعد ذلك، باستخدام $x+=5، تأكدنا من أن بيانات المتغير $x زادت بمقدار 5 في كل مرة يتم فيها إرجاع الحلقة.

$x = 25;
$y = 50;
while ($x < $y):
    echo "Sayı: {$x} 
";
    $x += 5;
endwhile;
/* 
 * Çıktı: 
Sayı: 25
Sayı: 30
Sayı: 35
Sayı: 40
Sayı: 45
*/