PHP Switch 語(yǔ)句
switch 語(yǔ)句用于根據(jù)多個(gè)不同條件執(zhí)行不同動(dòng)作。
PHP Switch 語(yǔ)句
如果您希望有選擇地執(zhí)行若干代碼塊之一,請(qǐng)使用 switch 語(yǔ)句。
語(yǔ)法
<?php switch(n){ //字符串,整型 case 具體值: 執(zhí)行代碼; break; case 具體值2: 執(zhí)行代碼2; break; case 具體值3: 執(zhí)行代碼3; break; default: ?>
工作原理:首先對(duì)一個(gè)簡(jiǎn)單的表達(dá)式 n(通常是變量)進(jìn)行一次計(jì)算。 將表達(dá)式的值與結(jié)構(gòu)中每個(gè) case 的值進(jìn)行比較。如果存在匹配,則執(zhí)行與 case 關(guān)聯(lián)的代碼。 代碼執(zhí)行后,使用 break 來(lái)阻止代碼跳入下一個(gè) case 中繼續(xù)執(zhí)行。 default 語(yǔ)句用于不存在匹配(即沒(méi)有 case 為真)時(shí)執(zhí)行。
switch后放需要判斷的變量,而case后是放結(jié)果。switch后變值為多少,case的值寫的與switch變量執(zhí)相同段的代碼。
? break是可選的
? default也是可選的,但是作為好的習(xí)慣,建議保留default語(yǔ)句
? case 后面寫成分號(hào),后面是冒號(hào):
? switch里面在變量最好是 整型,字符串
? switch語(yǔ)句的表達(dá)式必須是等于判斷,case里必須是一個(gè)明確的值,因此如果有大于小于判斷, 那么只能使用if和elseif,而不能使用switch
我們用流程圖來(lái)表示的話結(jié)果就如下圖所示:
實(shí)例
<?php $favcolor="red"; switch ($favcolor) { case "red": echo "你喜歡的顏色是紅色!"; break; case "blue": echo "你喜歡的顏色是藍(lán)色!"; break; case "green": echo "你喜歡的顏色是綠色!"; break; default: echo "你喜歡的顏色不是 紅, 藍(lán), 或綠色!"; } ?>
嘗試一下 ?
<?php //定義出行工具 $tool=rand(1,6); switch($tool){ case 1: echo '司機(jī)開(kāi)車'; break; case 2: echo '民航'; break; case 3: echo '自己家的專機(jī)'; break; case 4: echo '火車動(dòng)車'; break; case 5: echo '騎馬'; break; case 6: echo '游輪'; break; } ?>