آموزش قبلی در مورد دستور if-else بود و یاد گرفتید چطور با پی اچ پی شرط بنویسید و شرایط رو کنترل کنین.
توی این آموزش جدید و کوتاه به معرفی عبارت سوئچ یا همون SWITCH میپردازیم. این عبارت شبیه به ایف الس هستش ولی نحوه نوشتنش متفاوت و تقریبا کوتاه تره. معمولا از سوئیچ مواقعی استفاده میشه که برنامه نویس میخواد خوانائی برنامه رو بیشتر کنه و شرطها زیاد پیچیده نیستند. سوئچ رو به این شکل استفاده میکنن:
$color = "red" switch ($color) { 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, nor green!" }
که خروجی کدهای بالا بعد از اجرا، بخش اول، یعنی متن Your favorite color is red! هستش.
توی کد بالا گفته شده که اگر هر کدوم از رنگهای قرمز، آبی و یا سبز توی متغیر $color قرار گرفت، متن مورد نظر با توجه به مقدار این متغیر چاپ بشه و در قسمت default هم مشخص میشه که اگر هیچ کدوم از این انتخابها وجود نداشت بنویسه که شما هیچ کدوم از این سه رنگ رو انتخاب نکردین.
مثال: از دانش آموزی پرسیده میشه که کلاس چندمه؟
ما برای 3 انتخاب کلاس اول، دوم و سوم شرطهامون رو مینویسم و در شرایطی که هیچکدوم از اینها نبود میگیم که پاسخ شما جز موارد ما نیست.
اینجا فرض میشه دانش آموز پاسخش این بوده که کلاس سومه.
$reply= "سوم" switch ($reply) { case "اول": echo "شما کلاس اولی!" break; case "دوم": echo "شما کلاس دومی!" break; case "سوم": echo "شما کلاس سومی!" break; default: echo "انتخاب شما جز گزینه های ما نیست!" }
عبارت default اینجا برابر با قسمت else در شرط نویسی با ایف الس هستش.
در واقع، اول کلمه سوئیچ نوشته میشه و بعد آکولاد باز و بسته و بقیه کدها وسط این بلوک نوشته مشین؛ چیزی که میخوایم شرط هم روش بررسی کنیم داخل پرانتز و جلوی سوئچ نوشته میشه.
بعد از نوشتن و پایان هر کِیس (به معنای حالت)، کلمه کلیدی بریک BREAK رو حتما باید بنویسیم تا از SWITCH خارج بشیم و بقیه شروط بررسی نشه.
کد بالا برابر با کد زیر هستش:
if($reply == 'اول') echo "شما کلاس اولی!" elseif($reply == 'دوم') echo "شما کلاس دومی!" if($reply == 'سوم') echo "شما کلاس سومی!" else echo "انتخاب شما جز گزینه های ما نیست!"
امیدوارم یاد گرفته باشید.