دستور switch و case جلسه 10
خوب یک دستور شرطی دیگر به نام switch:
دقت کنید این دستور در کجا کاربرد داره ؟ مثلا شما سفارش فروشگاه انلاین دارید و این سایت دارای آیتم های متفاوتی هست مثلا هر موقع در آدرس بار مقدار shop ست شد مثل این alloweb.ir/shop
حالا این ست شدن با حالت های مختلفی رخ میده مثلا روی منو فروشگاه کلیک میکنید. سپس با دستور switch و case یک پیغام در صفحه برای شما نشان داده میشود. این مقدار میتواند هر چیزی باشد. در واقع switch و case به مقدار ورودی های خودشون حساس هستند.
برای شروع ابتدا یک directory میسازیم به هر نامی . حالتهای مختلفی میخواهیم تعریف کنیم . ابتدا متغییر تعریف میکنم و سپس میخاهیم حالت های مختلف برای name را تعریف میکنیم . حالت اول کلمه کلیدی case برابر با یک مقداری شده در با کلمه کلیدی echo نشان میدهیم . break برسی میکنی اگر شرط بر قرار بود ان وقت از حالت شرط خارج شو. حالت default یعنی در حالت کلی یک مقدار از قبل تعیین شده را چاپ کن و دیگه نیاز break نیاز پیدا نمیکنم
<?php
// مثال
$num="ali";
switch ($num){//دستور کلیدی
case 5:
echo "hello";
break;//هیچی نشون نمیده
case 7:
echo "helloalloweb";
break;
case "vahid":
echo "helloalloweb2020";
break;
default:
echo "helloalloweb";
}
مثال : یک متغییر با مقدار $_GET
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<form action="proces.php" method="get">
<input type="text" name="name">
<input type="submit" name="btn">
</form>
</body>
</html>
حالا فایل proces.php
<?php
$num=$_GET['name'];
switch ($num){//دستور کلیدی
case "reza"://اگر مقدارش برابر رضا باشد
echo "hello";
break;//هیچی نشون نمیده
case 7:
echo "helloalloweb";
break;
case "vahid":
echo "helloalloweb2020";
break;
default://به صورت دیفالت نشان میده
echo "coronaviros";
}
خوب ساده است هر موقع در فرم html مقداری قرار میگیره یه صفحه proces.php فرستاده شده حالا این مقدار میشینه در
$num=$_GET['name'];
$_GET در url ادرس بار میفوته و با دستور switch ادامه کار انجام خواهد شد .
دیدگاهتان را بنویسید