بر اساس وضعیت های متفاوت ، دستورات مختلفی اجرا می شود
و تنها یک بلاک دستور اجرا می شود

switch (n) { case label1:

code to be executed if n=label1;

break;

case label2:

code to be executed if n=label2;

break;

default:

code to be executed if n is different from both label1 and label2;

}

 روش کار این دستور را توضیح می دهیم :

ما اسم یک متغیر یا اینکه یک عبارت را درون پرانتز switch می نویسیم

 مقادیر مختلفی که می خواهید در صورتیکه متغیر یا عبارت داشته باشند دستوراتی انجام دهد جلوی case ها بنویسید
 مقدار متغیر جلوی switch یا مقدار عبارت جلوی switch با مقدار جلوی هر case که برابر بود ، دستورات ان case اجرا می شود
 از دستور break در انتهای هر case استفاده نمائید تا از اجرا شدن خودکار دستورات case بعدی جلوگیری کند زیرا در غیر این صورت در صورت برقرار بودن یک case ، case های بعدی حتی در صورت نداشتن مقدار برابر مقدار متغیر جلوی Switch ف باز هم اجرا خواهند شد
 در صورتیکه مقدار جلوی هیچکدام از case ها برابر مقدار موجود در متغیر یا عبارت جلوی switch نبود ، دستورات قسمت default اجرا خواهد شد
 مثال
 <?php
$favcolor="red";
switch ($favcolor)
{
case "red":
  echo "Your favorite color is red!";
  break;
case "blue":
  echo "Your favorite color is blue!";
  break;
case "green":
  echo "Your favorite color is green!";
  break;
default:
  echo "Your favorite color is neither red, blue, or green!";
}
?>
 مشاهده و اجرای برنامه کامل