PHP – دستور (switch Statement)

دستور switch در PHP

دستور switch برای انجام اقدامات مختلف بر اساس شرایط مختلف استفاده می‌شود.

دستور switch در PHP

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

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

switch (expression) {
  case label1:
    // کد بلوک
    break;
  case label2:
    // کد بلوک
    break;
  case label3:
    // کد بلوک
    break;
  default:
    // کد بلوک
}

نحوه کار:

  1. عبارت ارزیابی می‌شود.
  2. مقدار عبارت با مقادیر هر case مقایسه می‌شود.
  3. اگر یک تطابق وجود داشته باشد، بلوک کد مربوطه اجرا می‌شود.
  4. کلمه کلیدی break از بلوک switch خارج می‌شود.
  5. بلوک کد default در صورت عدم تطابق اجرا می‌شود.

مثال

$favcolor = "red";

switch ($favcolor) {
  case "red":
    echo "رنگ مورد علاقه شما قرمز است!";
    break;
  case "blue":
    echo "رنگ مورد علاقه شما آبی است!";
    break;
  case "green":
    echo "رنگ مورد علاقه شما سبز است!";
    break;
  default:
    echo "رنگ مورد علاقه شما نه قرمز، نه آبی و نه سبز است!";
}

کلمه کلیدی break

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

مثال بدون break

اگر کلمه کلیدی break را از case “red” حذف کنیم، چه اتفاقی می‌افتد؟

$favcolor = "red";

switch ($favcolor) {
  case "red":
    echo "رنگ مورد علاقه شما قرمز است!";
  case "blue":
    echo "رنگ مورد علاقه شما آبی است!";
    break;
  case "green":
    echo "رنگ مورد علاقه شما سبز است!";
    break;
  default:
    echo "رنگ مورد علاقه شما نه قرمز، نه آبی و نه سبز است!";
}

در این مثال، چون case “red” کلمه کلیدی break ندارد، بلوک کد case “blue” نیز اجرا می‌شود.

کلمه کلیدی default

کلمه کلیدی default مشخص می‌کند که کد در صورت عدم تطابق با هیچ case‌ای اجرا شود:

مثال

$d = 4;

switch ($d) {
  case 6:
    echo "امروز شنبه است";
    break;
  case 0:
    echo "امروز یکشنبه است";
    break;
  default:
    echo "منتظر آخر هفته هستم";
}

بلوک default نیازی به این ندارد که آخرین case در بلوک switch باشد:

مثال

$d = 4;

switch ($d) {
  default:
    echo "منتظر آخر هفته هستم";
    break;
  case 6:
    echo "امروز شنبه است";
    break;
  case 0:
    echo "امروز یکشنبه است";
}

توجه: اگر default آخرین بلوک در بلوک switch نباشد، حتماً بلوک default را با یک break به پایان برسانید.

بلوک‌های کد مشترک

اگر می‌خواهید چندین case از یک بلوک کد استفاده کنند، می‌توانید case‌ها را به این صورت مشخص کنید:

مثال

$d = 3;

switch ($d) {
  case 1:
  case 2:
  case 3:
  case 4:
  case 5:  
    echo "هفته خیلی طولانی به نظر می‌رسد!";
    break;
  case 6:
  case 0:
    echo "آخر هفته‌ها بهترین هستند!";
    break;
  default:
    echo "مشکلی پیش آمده است";
}

پست های مرتبط

مطالعه این پست ها رو از دست ندین!
JavaScript - تاریخ‌ها (Dates)

JavaScript – تاریخ‌ها (Dates)

آبجکت‌های تاریخ (Date) در جاوااسکریپت آبجکت‌های تاریخ در جاوااسکریپت به ما امکان کار با تاریخ و زمان را می‌دهند....

بیشتر بخوانید
JavaScript - آرایه‌های ثابت (Array Const)

JavaScript – آرایه‌های ثابت (Array Const)

جاوااسکریپت: تعریف آرایه با const در سال 2015، جاوااسکریپت کلمه کلیدی مهمی به نام const را معرفی کرد. این...

بیشتر بخوانید
JavaScript - تکرار آرایه‌ها (Array Iteration)

JavaScript – تکرار آرایه‌ها (Array Iteration)

جاوا اسکریپت: تکرار بر روی آرایه‌ها جاوا اسکریپت روش‌های مختلفی برای تکرار (Iteration) بر روی آرایه‌ها ارائه می‌دهد که...

بیشتر بخوانید

نظرات

سوالات و نظراتتون رو با ما به اشتراک بذارید

برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید.