آموزش کامل PHP – قسمت هشتم: switch

در این قسمت از آموزش یکی دیگر از دستورات پایه ای زبان php را آموزش خواهیم داد تا رفته رفته در قسمت های بعدی وارد مباحث پیشرفته تر شویم. دستور سویچ یکی از دستورات کاربردی در زبان های برنامه نویسی مانند پی اچ پی است که کاربرد آن شبیه به else … if است. اگر یادتان باشد در قسمت های قبل به طور کامل در مورد این دستورات شرطی صحبت کردیم و گفتیم که برای بررسی چند شرط می توانیم استفاده کنیم. اما دستور switch جایگزین بهتری برای شرط های چندگانه است.

دستور شرطی switch

روش استفاده از دستور switch به صورت زیر است:

<?php

$a = 1;

switch ($a){

case "1":

echo "number 1";

break;

case "2":

echo "number 2";

break:

default:

echo "number 1 & 2 not";

break;

} ?>

اگر به کد فوق توجه کنید ابتدا یک متغیر تعریف کرده ایم و مقدار یک را به آن نسبت داده ایم سپس آن متغیر را در پرانتز و در مقابل دستور switch قرار داده ایم. در ساختار سویچ هر case مانند else if عمل می کند و شرط جداگانه ای است. عملکرد برنامه به این صورت است که اگر مقدار متغیر 1 بود یعنی کیس 1، “عدد 1 است” چاپ می شود. اگر 2 بود، عدد 2 و اگر هیچکدام نبود دستور درون دیفالت اجرا می شود.

همان طور که مشاهده می کنید عملکرد این دستور دقیقا مشابه else if است و انسجام بهتری دارد. توصیه می شود برای بررسی چند شرط از این دستور استفاده کنید.

اصول کلی استفاده از switch

  1. قرار دادن آنچه قصد بررسی مقدارش را داریم در پرانتز مقابل دستور switch (متغییر یا دستوراتی که نهایتا یک خروجی داشته باشند)
  2. به ازای هر شرط یک دستور case را نوشته و علامت دو نقطه : را در مقابل قرار می دهیم
  3. کد مورد نظر را برای شرطی که در مرحله قبل نوشتیم، می نویسیم
  4. با استفاده از عبارت break و سپس قرار دادن علامت نقطه ویرگول ; شرط یاد شده را پایان می‌دهیم
  5. به ازای هر شرط دیگری که قصد بررسی آن را داریم مراحل ۲ تا ۴ را مجددا تکرار می‌کنیم
  6. همانند مثال بالا، در نهایت default را در پایین‌ترین بخش دستور switch می‌نویسیم تا در صورتی که هیچ کدام از شرط‌ های نوشته شده برقرار نبود، این دستور اجرا شود

برای درک بهتر این دستور یک مثال می زنیم. نام شهر را از کاربر گرفته و در صورتی که شیراز بود پیام خوشامد را نمایش می دهیم.

<?php

$usercity = 20;

switch ($usercity){

case "shiraz":

echo "welcome";

break;

case default:

echo "you are not from shiraz";

break;

} ?>

نکته: نوشتن بخش default اجباری نیست ولی پیشنهاد می کنیم همیشه این بخش را هم بنویسید تا شرایط را بهتر کنترل کنید.

پایان قسمت هشتم

دیدگاه خود را بنویسید

آدرس ایمیل شما منتشر نخواهد شد. فیلدهای الزامی علامت گذاری شده اند *