الكورس الخامس : تعلم الحلقات

الكورس الخامس : تعلم الحلقات

الحلقة أو الحلقات في ووردبريس هي تماماً كما تعنيه كلمة حلقة في اللغة العربية, أي انها تدور وتدور حتى تقوم باخراج قيمة معينة.

ستتعلم في الفصول التالية كيفية تكرار التعليمات البرمجية باستخدام الحلقات في PHP.

أنواع الحلقات في PHP

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

تُستخدم الحلقات لتنفيذ نفس كتلة التعليمات البرمجية مرارًا وتكرارًا ، طالما أن شرطًا معينًا صحيحًا.

في PHP ، لدينا أنواع الحلقات التالية:

  • while – حلقات من خلال كتلة من التعليمات البرمجية طالما أن الشرط المحدد صحيح
  • for – حلقات من خلال كتلة من التعليمات البرمجية لعدد محدد من المرات
  • foreach – حلقات من خلال كتلة من التعليمات البرمجية لكل عنصر في المصفوفة

سوف تشرح الفصول التالية ونعطي أمثلة عن كل نوع من أنواع الحلقات.

الحلقة الأولى – while

في حلقة – while اي بما معناه, في حال كان لدينا أي قيمة من التعليمات البرمجية الموافقة لطلبنا عند كتابة الكود, … وهنا يجب تتبع الكود في الدروس التالية.

while (condition is true) {
  code to be executed;
}

مثال أول على حلقة while

<?php
$x = 1;
while($x <= 5) {
  echo "The number is: $x <br>";
  $x++;
}
?>

شرح المثال الأول

  • × دولار = 1 ؛ – قم بتهيئة عداد الحلقة ($x) ، واضبط قيمة البداية على 1
  • $ x <= 5 – استمر في الحلقة طالما أن $ x أقل من أو تساوي 5
  • X ++ دولار ؛ – قم بزيادة قيمة عداد الحلقة بمقدار 1 لكل تكرار

مثال ثاني على حقلة while

<?php
$x = 0;
while($x <= 100) {
  echo "The number is: $x <br>";
  $x+=10;
}
?>

شرح المثال الثاني

شرح المثال

  • x دولار = 0 ؛ – قم بتهيئة عداد الحلقة ($ x) ، واضبط قيمة البداية على 0
  • $ x <= 100 – تابع الحلقة طالما أن $ x أقل من أو يساوي 100
  • $ x + = 10 ؛ – قم بزيادة قيمة عداد الحلقة بمقدار 10 لكل تكرار

الحلقة الثانية – for

في حلقة – for نقوم باظهار من خلال كتلة من التعليمات البرمجية عدد محدد من المرات.

for (init counter; test counter; increment counter) {
  code to be executed for each iteration;
}

المعلمات:

  • عداد التهيئة – init  : تهيئة قيمة عداد الحلقة
  • عداد الاختبارtest counter  : يتم تقييمه لكل تكرار حلقي. إذا تم التقييم إلى TRUE ، فستستمر الحلقة. إذا تم التقييم إلى FALSE ، تنتهي الحلقة.
  • عداد الزيادة – increment counter: : يزيد من قيمة عداد الحلقة

مثال أول على حلقة for

<?php
for ($x = 0; $x <= 10; $x++) {
  echo "The number is: $x <br>";
}
?>

شرح المثال الأول

  • x دولار = 0 ؛ – قم بتهيئة عداد الحلقة ($ x) ، واضبط قيمة البداية على 0
  • × دولار <= 10 ؛ – استمر في الحلقة طالما أن $ x أقل من أو يساوي 10
  • $ x ++ – قم بزيادة قيمة عداد الحلقة بمقدار 1 لكل تكرار

مثال ثاني على حلقة for

<?php
for ($x = 0; $x <= 100; $x+=10) {
  echo "The number is: $x <br>";
}
?>

شرح المثال الثاني

  • x دولار = 0 ؛ – قم بتهيئة عداد الحلقة ($ x) ، واضبط قيمة البداية على 0
  • × دولار <= 100 ؛ – استمر في الحلقة طالما أن $ x أقل من أو يساوي 100
  • $ x + = 10 – قم بزيادة قيمة عداد الحلقة بمقدار 10 لكل تكرار

الحلقة الثالثة – foreach 

في حلقة- foreach سنعمل فقط على المصفوفات، وسنشرح ذلك في الامثلة التالية لنفهم المعنى منها

foreach ($array as $value) {
  code to be executed;
}

لكل تكرار حلقي ، يتم تعيين قيمة عنصر المصفوفة الحالية إلى قيمة $ ( يعني المتغير ) ويتم نقل مؤشر المصفوفة بمقدار واحد ، حتى يصل إلى آخر عنصر مصفوفة.

مثال اول على حلقة foreach

<?php
$colors = array("red", "green", "blue", "yellow");
foreach ($colors as $value) {
  echo "$value <br>";
}
?>

شرح المثال الأول في حلقة foreach:

اعطينا متغير الألوان $colors قيمة تعريفية وهي في مصفوفة array, والعناصر هي اخضر احمر,…..الخ.

ثم كتبنا حلقة foreach بمعنى انه في كل قيمة ضمن مصفوفة المتغير $colors , اعتبرها ك قيمة وهي متغير جديد حددناه باسم $value. ثم قمنا بطباعة المتغير الناتج لدينا $value.

مثال ثاني على حلقة foreach

<?php
$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
foreach($age as $x => $val) {
  echo "$x = $val<br>";
}
?>

شرح المثال الثاني في حلقة foreach:

اعطينا المتغير age قيمة تعريفية وهي ضمن مصفوفات متعددة, ثم طلبنا في الكود السابق بأن يختار ضمن حلقة foreach بتحديد قيمة كل عنصر من المصفوفة بالنتيجة val التي تساوي x علماً أن x هو ايضاً متغير قد يكون رقم معين.

ثم قمنا بطباعة أمر اظهار المتغير x الذي يساوي val.