سبد (0)

تبلیغات

دستور switch در PHP

دستور Switch

Wiki

برای انتخاب و اجرای یک دستور از بین چند دستور استفاده می شود.

این دستور در برخی موارد شباهت بسیار زیادی به دستورات if ... elseif ... else دارد.

دستور switch یک حالت خاص هم دارد به نام default که اگر هیچکدام از مقادیر درست نبود، آن قسمت اجرا می شود.

نحوه استفاده:

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;
}

کد بالا چگونه کار می کند:

  • case

از کلمه case بجای if else استفاده می کنیم و حالت مختلف شرط را در جلوی آن می نویسیم و سپس علامت ":" می گذاریم، در حقیقت اگر متغییر ما یعنی n برابر با مقدار مقابل case بود، نتیجه این می شود که باید دستورات مربوط به آن case اجرا شود، در غیر اینصورت case بعدی مقایسه می شود.

  • break

دستور break یکی از بخشهای switch است که به مفسر PHP می فهماند که در کجا، قسمت case تمام می شود، در حقیقت از تداخل قسمتهای مختلف جلوگیری می کند. دقت کنید که شما هم باید آنرا قبل از شروع case بعدی بنویسید.

  • default

اگر هیچکدام از مقادیر مقابل caseها با متغییر n برابر نبود، در این صورت دستورات مربوط به default اجرا می شود.

مثال:

<html>
<body>

<?php
$x=3;
switch ($x)
{
case 1:
echo "Number 1";
break;
case 2:
echo "Number 2";
break;
case 3:
echo "Number 3";
break;
default:
echo "No number between 1 and 3";
}
?>

</body>
</html>

خروجی کد بالا:

Number 3


برای مشاهده فیلم ها و آموزش های پروژه محور برنامه نویسی PHP کلیک کنید.

دیدگاه‌ها  

+1 # خشایار مافی 1395-04-11 13:07
برای آرایه ها هم میشه از سوییچ کیس استفاده کرد؟
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # مهرداد صلاحی 1395-04-14 22:23
سلام.

در سوئیچ کیس شما باید از یک متغیر استفاده کنید. این متغیر می‌تونه خونه‌ای از یک آرایه باشه، ولی اینکه کل آرایه باشه، خیر.
عبارات داخل کیس هم باید یک مقدار ثابت باشه، و نمی‌تونه مقایسه‌ای باشه.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+5 # mohsen moardi 1393-10-18 11:40
case هميشه بايد عدد باشه؟ تو مثال بالا ميگيم اگه x يك بود number 1 نوشته شه. فرض كنيد بخوايم بگيم اگه x بزرگتر از 10 بود ي دستور خاصي انجام بشه....اگه بزرگتر از 5 بود ي دستور ديگه اي انجام بشه....در اين صورت بايد چطور case رو تعيين كنيم؟
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+11 # امیر پهلوان صادق 1393-10-18 14:27
متأسفانه در دستور switch موارد فقط از لحاظ تساوی مقایسه می شوند.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن

آموزش صوتی PHP

بستن
مدرس:
سوال و جواب:

ابزاری که در پیش روی دارید یکی از ابزارهای بسیار کاربردی سایت بیاموز در زمینه آموزش است، این ابزار برای سهولت یادگیری شما کاربران محترم طراحی شده است.

فقط کافی است روی عنوان پاراگراف مورد نظرتان کلیک کنید تا پخش صدا آغاز شود ...!

تمامی محصولات و خدمات این وبسایت، حسب مورد دارای مجوزهای لازم از مراجع مربوطه می‌باشند و فعالیت‌های این سایت تابع قوانین و مقررات جمهوری اسلامی ایران است.
logo-samandehi مجوز نشر دیجیتال از وزرات فرهنگ و ارشاد اسلامی پرداخت آنلاین -  بانک ملت معرفی بیاموز در شبکه سه پرداخت آنلاین - بانک اقتصاد نوین پرداخت آنلاین - بانک سامان
 
دوره های آموزشی راه اندازی کسب و کارهای اینترنتی
تبلیغات اینترنتی