العبارة Switch


كود:
Switch (VARIABLE) {
CASE THING1 :
		Excute code ;
              break;
	CASE THING2 :
		Excute code ;
		break;
 Default; 
		Excute code ;


  }
تقوم العبارة بنفس عملية العبارة if ولكن بهيكلية أسهل ومحببة أكثر وتتيح لك اختبار قيمة متغير وإجراء أكثر من اختبار عليه .


break;
تقوم بالخروج من عباره معينه مثل switch و if والذهاب الى الأوامر والعبارات التي بعدها .
EXIT;
تقوم بعملية الخروج من الكود نهائياً ولاتطبق أي أوامر بعدها ، وفي الأمثله التوضيحية التالية ستجد أن break; تخرج من العبارة فقط (Statement) بينما الـexit; تقوم بالخروج من كامل الكود (code).


مثال :
كود:
<?
$s=10;
if ($s=10) {
echo “number=10”;
exit;
}
elseif ($s<11) {
  echo “number is less than 11”
{ 
echo “hello”;
?>
مثال :
كود:
<?
$s=10;
if ($s=10) {
echo “number=10”;
break;
}
elseif ($s<11) {
  echo “number is less than 11”
{
echo “Hello”;
?>
Defualt;
إذا لم تصلح جميع الحالات (Cases) في العبارة (Switch) فسيتم تنفيذ الأوامر التي تقع بعد هذه الكلمة وهي تؤدي نفس عمل else تقريباً في العباره if .

مثال ( 1)
كود:
<?
$g= “ahmed”;
Switch ($g) {
	Case “ahmed”:
		Echo “مسموح “; 
		Break ; 
  Case “khaled “ :  
		Echo “ممنوع “ ;
		Break ; 
  Case “salem“ :  
		Echo “ممنوع “ ;
		Break ; 
   Case “Mohmed “ :  
		Echo “مسموح “ ;
		Break ; 
Default ;
	Echo “لقد ادخلت اسم غير صالح”;
} 
?>
مثال (2)
كود:
Switch ($g) {
	Case $g>50:
		Echo “كبير “; 
		Break ; 
  Case  40 :
		Echo “لاباس “ ;
		Break ; 
  Case ($g<15) :  
		Echo “أطفال ممنوع “ ;
		Break ; 
   Case 30 :  
		Echo “مسموح “ ;
		Break ; 
}
لاحظ أننا عند اختبارنا لنصوص نحتاج الى علامتي تنصيص مزدوجة وعند الارقام فاننا لانحتاج الي ذلك .