PHP للحلقة
نواتج الكود أعلاه “21 أكبر من 7” حلقات For … تقوم الحلقات بتنفيذ كتلة الكود بعدد محدد من المرات. هناك نوعان أساسيان من حلقات for ؛
- for
- for… each.
دعونا الآن ننظر إليهم بشكل منفصل. حلقة For لديها بناء الجملة الأساسي التالي
<?php
for (initialize; condition; increment){
//code to be executed
}
?>
هنا:
“for… {…}” هو كتلة الحلقة
” تهيئة ” عادة عدد صحيح ؛ يتم استخدامه لتعيين القيمة الأولية للعداد.
“الشرط” هو الشرط الذي يتم تقييمه لكل تنفيذ php. إذا كان التقييم صحيحًا ، فسيتم إنهاء تنفيذ الحلقة for …. إذا تم التقييم بـ false ، فسيستمر تنفيذ حلقة for ….
يتم استخدام “زيادة” لزيادة القيمة الأولية للعداد الصحيح.
كيف تعمل
يوضح المخطط الانسيابي الموضح أدناه كيفية عمل حلقة for في عمل php
كيفية البرمجة
يستخدم الكود أدناه “for… loop” لطباعة قيم ضرب 10 في 0 إلى 10
<?php
for ($i = 0; $i < 10; $i++){
$product = 10 * $i;
echo "The product of 10 * $i is $product <br/>";
}
?>
The product of 10 x 0 is 0
The product of 10 x 1 is 10
The product of 10 x 2 is 20
The product of 10 x 3 is 30
The product of 10 x 4 is 40
The product of 10 x 5 is 50
The product of 10 x 6 is 60
The product of 10 x 7 is 70
The product of 10 x 8 is 80
The product of 10 x 9 is 90
PHP لكل حلقة
تُستخدم حلقة php foreach للتكرار خلال قيم المصفوفة. يحتوي على بناء الجملة الأساسي التالي
<?php
foreach($array_variable as $array_values){
block of code to be executed
}
?>
هنا:
- “foreach (…) {…}” هو كود كتلة حلقة foreach php
- “array_data $” هو متغير المصفوفة المطلوب تكراره
- “array_value $” هو المتغير المؤقت الذي يحتفظ بقيم عناصر المصفوفة الحالية.
- “block of code …” هو جزء من الكود يعمل على قيم المصفوفة
كيف يعمل المخطط الانسيابي الموضح أدناه يوضح كيفية عمل حلقة for… every…
أمثلة عملية
الكود أدناه يستخدم لـ … كل حلقة لقراءة وطباعة عناصر المصفوفة.
<?php
$animals_list = array("Lion","Wolf","Dog","Leopard","Tiger");
foreach($animals_list as $array_values){
echo $array_values . "<br>";
}
?>
Lion
Wolf
Dog
Leopard
Tiger
لنلق نظرة على مثال آخر يتكرر عبر مصفوفة ترابطية .
تستخدم المصفوفة الترابطية كلمات أبجدية رقمية لمفاتيح الوصول.
<?php
$persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female");
foreach($persons as $key => $value){
echo "$key is $value"."<br>";
}
?>
تم استخدام الأسماء كمفاتيح مصفوفة والجنس كقيم.
Mary is Female
John is Male
Mirriam is Female
While Loop
يتم استخدامها لتنفيذ كتلة من التعليمات البرمجية بشكل متكرر حتى يتم استيفاء الشرط المحدد
متى تستخدم أثناء الحلقات
- أثناء استخدام الحلقات لتنفيذ كتلة من التعليمات البرمجية حتى يصبح شرط معين صحيحًا.
- يمكنك استخدام حلقة while لقراءة السجلات التي تم إرجاعها من استعلام قاعدة بيانات.
أنواع حلقات التكرار
- Do… while – ينفذ كتلة الكود مرة واحدة على الأقل قبل تقييم الحالة
- بينما… – يتحقق الشرط أولاً. إذا كان التقييم صحيحًا ، فسيتم تنفيذ كتلة التعليمات البرمجية طالما أن الشرط صحيح. إذا تم التقييم على خطأ ، فسيتم إنهاء تنفيذ حلقة while.
While loop
يحتوي على النحو التالي
<?php
while (condition){
block of code to be executed;
}
?>
هنا،
- “while (…) {…}” هو رمز حظر حلقة while
- “الشرط” هو الشرط الذي سيتم تقييمه بواسطة حلقة while
- “block of code …” هو الكود الذي سيتم تنفيذه إذا تم استيفاء الشرط
كيف تعمل
يوضح مخطط التدفق الموضح أدناه كيفية عمل حلقة while…
مثال عملي
يستخدم الكود أدناه حلقة while … لطباعة الأرقام من 1 إلى 5.
<?php
$i = 0;
while ($i < 5){
echo $i + 1 . "<br>";
$i++;
}
?>
1
2
3
4
5
PHP Do While
الفرق بين while… loop و Do… while loop is do… while يتم تنفيذها مرة واحدة على الأقل قبل تقييم الشرط.
دعنا الآن نلقي نظرة على التركيب الأساسي لـ do… while loop
<?php
do{
block of code to be executed
}
?>
while(condition);
هنا:
- “do {…} while (…)” هو رمز كتلة do… while loop
- “الشرط” هو الشرط الذي سيتم تقييمه بواسطة حلقة while
- “block of code …” هو الكود الذي يتم تنفيذه مرة واحدة على الأقل بواسطة حلقة do… while
كيف تعمل
يوضح مخطط التدفق الموضح أدناه كيفية عمل حلقة while…
مثال عملي
سنقوم الآن بتعديل مثال حلقة while… loop وتنفيذه باستخدام حلقة do… while وتعيين القيمة الأولية للعداد على 9.
الكود أدناه يطبق المثال المعدل أعلاه
<?php
$i = 9;
do{
echo "$i is"." <br>";
}
while($i < 9);
?>
9
لاحظ مخرجات المثال أعلاه 9 فقط.
هذا لأن حلقة do… while يتم تنفيذها مرة واحدة على الأقل حتى إذا تم تقييم الشرط المحدد على خطأ.