القائمة الرئيسية

الصفحات

الشروط و الحلقات في php

لغة php : تعابير اذا .. غير ذلك If...Else



تستخدم التعابير الشرطية لإنشاء أوامر مختلفة تعتمد على شروط مختلفة .



التعابير الشرطية


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

لدينا 4 تعابير شرطية وهي :

  • تعبير if : يستخدم هذا التعبير لإظهار كود معين في حال كانت الحالة صحيحة تماماً .

  • تعبير if … else : تعبير اذا وغير ذلك : يمكن استخدام هذا النوع من الكود الشرطي اذا كانت حالة الشرط الأول صحيحة والثانية خاطئة .

  • تعبير if … else if ….else : يستخدم هذا التعبير مع واحد من مجموعة أكواد أي يستخدم عند تحقق شرط معين واذا لم يتحقق سيتم إظهار شرط آخر واذا لم يتحقق سيتم تلقائياً تطبيق الكود عند else .

  • تعبير switch : يستخدم هذا التعبير لإختيار كود من مجموعة أكواد .

الشرط If


يستخدم هذا التعبير لإظهار كود معين في حال كانت الحالة صحيحة تماماً .

التركيبة


if (condition)
		  

الكود الذي سيعرض اذا كانت النتيجة صحيحة;

سيعرض المثال التالي "اليوم هو جمعة" اذا كان اليوم جمعة :
<html>
		  <body>
		  <?php
		  $d=date("D");
		  if ($d=="Fri") echo "اليوم هو جمعة";
		  ?>

		  </body>
		  </html>



لاحظ أننا لم نستخدم تعبير else في هذا المثال . ستظهر نتيجة الكود فقط عندما تكون النتيجة صحيحة .



الشرط if … else


تعبير اذا أو غير ذلك : يمكن استخدام هذا النوع من الكود الشرطي اذا كانت حالة الشرط الأول صحيحة والثانية خاطئة .

التركيبة


if (الشرط)
		  {
		  الكود الذي سيظهر في حال تحقق الشرط
		  }
		  else
		  {
		  الكود الذي سيظهر في حال لم يتحقق الشرط
		  }
		  

مثال

سيعرض المثال التالي "اليوم هو جمعة" اذا كان اليوم جمعة أما اذا لم يكن جمعة فستعرض النتيجة "اليوم ليس بيوم جمعة" :

<html>
		  <body>
		  <?php
		  $d=date("D");
		  if ($d=="Fri")
		  echo "اليوم هو جمعة";
		  else
		  echo "اليوم ليس جمعة";
		  ?>

		  </body>
		  </html>



اذا كان هناك أكثر من نتيجة سيتم عرضها اذا كان الشرط true/false عندها يجب وضع الشرط والنتائج ضمن أقواس منحنية {}
<html>
		  <body>
		  <?php
		  $d=date("D");
		  if ($d=="Fri")
		  {
		  echo "مرحباً<br />";
		  echo "إنه يوم جميل ";
		  echo "أراك لاحقاً";
		  }
		  ?>

		  </body>
		  </html>





الشرط if … else if ….else


يستخدم هذا التعبير مع واحد من مجموعة أكواد أي يستخدم عند تحقق شرط معين واذا لم يتحقق سيتم إظهار شرط آخر واذا لم يتحقق سيتم تلقائياً تطبيق الكود عند else .

التركيبة


if (الشرط 1)
		  {
		  الكود الذي سيظهر في حال تحقق الشرط 1
		  }
		  else if (الشرط 2)
		  {
		  الكود الذي سيظهر في حال تحقق الشرط 2
		  }
		  else
		  {
		  الكود الذي سيظهر في حال لم يتحقق الشرط 1 أو الشرط 2
		  }
		  

مثال

في المثال التالي سيتم عرض الجملة "Have a nice weekend!" اذا كان اليوم جمعة واذا لم يكن سيتم عرض "Have a nice Sunday!" اذا كان يوم الأحد و سيتم عرض "Have a nice day!" اذا كان غير ذلك .
<html>
		  <body>
		  <?php
		  $d=date("D");
		  if ($d=="Fri")
		  echo "Have a nice weekend!";
		  elseif ($d=="Sun")
		  echo "Have a nice Sunday!";
		  else
		  echo "Have a nice day!";
		  ?>

		  </body>
		  </html>



لغة php : تعبير switch 



تستخدم التعابير الشرطية لإنشاء أوامر مختلفة تعتمد على شروط مختلفة .

تعبير switch في PHP


يستخدم تعبير switch لإختيار كود من مجموعة أكواد .

التركيبة


switch(n) {
		  case 1:
		  إدراج مجموعة الأكواد 1
		  break;
		  case 2:
		  إدراج مجموعة الأكواد 2
		  break;
		  default:
		  إظهار الكود اذا كانت النتيجة غير مطابقة للحالتين 1 و 2
		  }

كيف يعمل الكود


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

إن كان هناك تطابق مع الكود سيت عرضه فوراً وسيتوقف الكود عن الفحص كما يمكن استخدام break بعد كل حالة لتجنب عبور الفحص إلى الحالة الأخرى تلقائياً .

مثال
<html>
		  <body>
		  <?php
		  $x=1;
		  switch ($x)
		  {
		  case 1:
		  echo "الرقم 1";
		  break;

		  case 2:
		  echo " الرقم 2";
		  break;

		  case 3:
		  echo " الرقم 3";
		  break;

		  default:

		  echo "لايوجد أرقام بين 1 و 3 ";

		  }

		  ?>

		  </body>
		  </html>



لغة php : الحلقات - الحلقة while



تستخدم الحلقات لإنشاء مجموعة من الأكواد تحدد عدد مرات الأرقام أو اذا كان الشرط صحيح .

الحلقات PHP


عند كتابتك لكود معين وتريد أن يكون هذا الكود مماثل لعدة مرات بالظهور نفسه مجدداً ضمن سطر معين .

عوضاً عن كتابة الكود أكثر من مرة يمكنك استخدام الكود مرة واحدة وبشكل حلقات متتالية عندها يظهر الكود الذي تريد أكثر من مرة .

هناك 4 أنواع من الحلقات في PHP 

  • الحلقات باستخدام while : من خلال استخدام مجموعة أكواد عند تحقق شرط معين .

  • الحلقات باستخدام do...while : من خلال استخدام مجموعة أكواد لمرة واحدة ثم تكرار الحلقة طالما يتحقق ذلك شرط .

  • الحلقات باستخدام for : من خلال استخدام مجموعة أكواد لتحديد عدد مرات معينة .

  • الحلقات باستخدام foreach : من خلال استخدام مجموعة أكواد لكل عنصر في المصفوفة .

الحلقة while


تستخدم الحلقات باستخدام while من خلال استخدام مجموعة أكواد عند تحقق شرط معين .

التركيبة


while (condition)
	  {
	  code to be executed;
	  }
	  

مثال

يشرح المثال التالي حلقة تبدأ بالمتغير i=1 . ستستمر الحلقة بالعمل طالما المتغير i هي أصغر من أو يساوي 5 . سيتم زيادة رقم واحد 1 في كل مرة تعمل بها الحلقة حتى تستوفي الشرط .
<html>
	  <body>
	  <?php
	  $i=1;
	  while($i<=5)
	  {
	  echo "الرقم هو " . $i . "<br />";
	  $i++;
	  }
	  ?>

	  </body>
	  </html>



النتيجة 

الرقم هو 1
الرقم هو 2
الرقم هو 3
الرقم هو 4
الرقم هو 5



الحلقة do...while


تستخدم مجموعة أكواد لمرة واحدة ثم تكرار الحلقة طالما يتحقق ذلك شرط .

التركيبة


do
	  {
	  code to be executed;
	  }
	  while (condition);
	  

مثال

يشرح المثال التالي حلقة تبدأ بالمتغير i=1 . ستستمر الحلقة بالعمل طالما المتغير i هي أصغر من أو يساوي 5 . سيتم زيادة رقم واحد 1 في كل مرة تعمل بها الحلقة حتى تستوفي الشرط
<html>
	  <body>
	  <?php
	  $i=1;
	  do
	  {
	  $i++;
	  echo "The number is " . $i . "<br />";
	  }
	  while ($i<=5);
	  ?>

	  </body>
	  </html>



النتيجة 

الرقم هو 2
الرقم هو 3
الرقم هو 4
الرقم هو 5
الرقم هو 6

سيتم شرح الحلقات for و أيضاً foreach في الدرس القادم

لغة php : الحلقات - الحلقة For



تستخدم الحلقات لإنشاء مجموعة من الأكواد تحدد عدد مرات الأرقام أو اذا كان الشرط صحيح .

الحلقة For


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

التركيبة


for (init; condition; increment)
	  {
	  code to be executed;
	  }
	  

البارامترز Parameters

  • Init : تستخدم عادة لضبط العداد (لكن يمكن أن يكون أي نوع من الأكواد التي ستظهر مرة في بداية كل حلقة ) .

  • Condition : الشرط و هو الشرط الذي سيرفق في الحلقة في حال كان الشرط true فإن الحلقة ستكمل الدوران ولكن في حال كان الشرط false ستتوقف الحلقة .

  • Increment : تستخدم عادة لزيادة العداد .

ملاحظة : كل واحد من البارامتر في التركيبة السابقة يمكن أن يكون خالياً و يمكن أن يكون أكثر من تعبير مفصول بفاصلة .

يعرّف المثال التالي حلقة تبدأ من i=1 . ستستمر الحلقة بالدوران طالما أن i هي أصغر أو تساوي 5 . سيتم زيادة i بالرقم 1 في كل مرة تدور فيها الحلقة .
<html>
	  <body><?php
	  for ($i=1; $i<=5; $i++)
	  {
	  echo "الرقم هو " . $i . "<br />";
	  }
	  ?>
	  </body>
	  </html>



النتيجة 

الرقم هو 1
الرقم هو 2
الرقم هو 3
الرقم هو 4
الرقم هو 5

الحلقة foreach


من خلال استخدام مجموعة أكواد لكل عنصر في المصفوفة .

التركيبة


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

في المثال التالي يشرح كيفية إظهار النتيجة من المصفوفة :

<html>
	  <body><?php
	  $x=array("واحد","اثنان","ثلاثة");
	  foreach ($x as $value)
	  {
	  echo '<ul>';
	  echo '<li>' . $value . "</li>";
	  echo '</ul>';
	  }
	  ?>
	  </body>
	  </html>



النتيجة

  • واحد

  • اثنان

  • ثلاثة