亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

PHP的switch判斷語句的“高級”用法詳解

2020-03-22 20:23:46
字體:
來源:轉載
供稿:網友
只所以稱為“高級”用法,是因為我連switch的最基礎的用法都還沒有掌握,so,接下來講的其實還是它的基礎用法!switch 語句和具有同樣表達式的一系列的 IF 語句相似。很多場合下需要把同一個變量(或表達式)與很多不同的值比較,并根據它等于哪個值來執行不同的代碼。這正是 switch 語句的用途。注意: 注意和其它語言不同,continue 語句作用到 switch 上的作用類似于 break。如果在循環中有一個 switch 并希望 continue 到外層循環中的下一個輪回,用 continue 2。下面兩個例子使用兩種不同方法實現同樣的事,一個用一系列的 if 語句,另一個用 switch 語句:Example #1 switch 結構復制代碼 代碼如下:
php
if ($i == 0)
{
echo "i equals 0";
}
elseif ($i == 1)
{
echo "i equals 1";
}
elseif ($i == 2)
{
echo "i equals 2";
}switch ($i)
{
case 0:
echo "i equals 0";
break;
case 1:
echo "i equals 1";
break;
case 2:
echo "i equals 2";
break;
}

Example #2 switch 結構可以用字符串復制代碼 代碼如下:
php
switch ($i)
{
case "apple":
echo "i is apple";
break;
case "bar":
echo "i is bar";
break;
case "cake":
echo "i is cake";
break;
}

重點:(這就是我先前一直沒掌握的地方?。楸苊忮e誤,理解 switch 是怎樣執行的非常重要。switch 語句一行接一行地執行(實際上是語句接語句)。開始時沒有代碼被執行。僅當一個 case 語句中的值和 switch 表達式的值匹配時 PHP 才開始執行語句,直到 switch 的程序段結束(如 return 語句)或者遇到第一個 break 語句為止。如果不在 case 的語句段最后寫上 break 的話,PHP 將繼續執行下一個 case 中的語句段。例如:
復制代碼 代碼如下:
php
switch ($i)
{
case 0:
echo "i equals 0";
case 1:
echo "i equals 1";
case 2:
echo "i equals 2";
}

特別說明:這里如果 $i 等于 3,PHP不會執行任何echo語句!但是,如果 $i 等于 0,PHP 將執行所有的 echo 語句!如果 $i 等于 1,PHP 將執行后面兩條 echo 語句。只有當 $i 等于 2 時,才會得到“預期”的結果——只顯示“i equals 2”。所以,別忘了 break 語句就很重要(即使在某些情況下故意想避免提供它們時)。[效率]在 switch 語句中條件只求值一次并用來和每個 case 語句比較。在 elseif 語句中條件會再次求值。如果條件比一個簡單的比較要復雜得多或者在一個很多次的循環中,那么用 switch 語句可能會快一些。在一個 case 中的語句也可以為空,這樣只不過將控制轉移到了下一個 case 中的語句。
復制代碼 代碼如下:
php
switch ($i)
{
case 0:
case 1:
case 2:
echo "i is less than 3 but not negative";
break;
case 3:
echo "i is 3";
}

一個 case 的特例是 default。它匹配了任何和其它 case 都不匹配的情況。例如:
復制代碼 代碼如下:
php
switch ($i)
{
case 0:
echo "i equals 0";
break;
case 1:
echo "i equals 1";
break;
case 2:
echo "i equals 2";
break;
default:
echo "i is not equal to 0, 1 or 2";
}

case 表達式可以是任何求值為簡單類型的表達式,即整型或浮點數以及字符串。不能用數組或對象,除非它們被解除引用成為簡單類型。
【實戰】 根據上面的知識點,編寫這么一個函數:計算容量值實際代表的字節數
復制代碼 代碼如下:
php
/**
* 返回字節數
*
* @param string $val 如 400M
*/
function return_bytes($val = '')
{
$val = trim($val);
$last = strtolower($val{strlen($val)-1});
switch ($last)
{
case 'g':
$val *= 1024;
case 'm':
$val *= 1024;
case 'k':
$val *= 1024;
}return $val;
}$memorylimit = ini_get('memory_limit');
echo $memorylimit, ' br/
echo return_bytes($memorylimit);
輸出:
復制代碼 代碼如下:
400M
419430400
特別說明:$val = 400M時,case 'm' 被命中,其下的 $val *= 1024; 被執行,但因為沒有 break 語言,所以會繼續命中 case 'k',并執行其下的 $val *= 1024;語句,so,總體上相當于執行了 400 * 1024 * 1024 。PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美激情国产日韩精品一区18| 日韩av观看网址| 国产91精品黑色丝袜高跟鞋| 欧美电影免费观看电视剧大全| 国产三级精品网站| 色妞久久福利网| 美女久久久久久久久久久| 国产91在线播放九色快色| 黑人欧美xxxx| 亚洲福利视频专区| 精品成人久久av| www.日韩欧美| 成人久久久久久| 欧美性videos高清精品| 久久久国产精彩视频美女艺术照福利| 欧美激情一二三| 国产精品∨欧美精品v日韩精品| 亚洲精品在线观看www| 欧美一区三区三区高中清蜜桃| 精品国产91乱高清在线观看| 姬川优奈aav一区二区| 欧美激情亚洲激情| 国产精品欧美日韩一区二区| 欧美性猛交xxxx乱大交蜜桃| 九九热这里只有精品6| 国产99视频精品免视看7| 91大神在线播放精品| 久久久亚洲天堂| 欧美在线国产精品| 亚洲大尺度美女在线| 在线日韩第一页| 精品国产鲁一鲁一区二区张丽| 欧美中文字幕视频在线观看| 欧美成年人在线观看| 国产一区二区三区在线免费观看| 欧美孕妇毛茸茸xxxx| 欧美性资源免费| 91久久久国产精品| 亚洲福利视频免费观看| 日韩小视频在线观看| 少妇久久久久久| 国语自产偷拍精品视频偷| 中文字幕视频在线免费欧美日韩综合在线看| 国产成人精品a视频一区www| 国产精品一区二区久久国产| 亚洲美女av网站| 国产精品一区二区av影院萌芽| 精品久久久香蕉免费精品视频| 欧美成人精品一区二区| 欧美激情区在线播放| 奇米影视亚洲狠狠色| www.亚洲人.com| 欧美麻豆久久久久久中文| 亚洲电影免费在线观看| 久久久av免费| 日韩av在线一区| 精品国产欧美一区二区五十路| 热久久美女精品天天吊色| 日韩美女视频免费在线观看| 欧美精品激情在线| 亚洲欧美综合v| 日韩欧美亚洲国产一区| 欧美精品一区三区| 亚洲国产精品成人av| 国产精品久久久久久影视| 欧美在线观看日本一区| 亚洲欧美在线一区| 精品福利樱桃av导航| 91在线播放国产| 久精品免费视频| 亚洲国产成人一区| 欧美国产亚洲精品久久久8v| 久久久噜久噜久久综合| 欧美精品免费播放| 97视频免费在线看| 国产精品嫩草影院久久久| 国产欧美精品va在线观看| 久久精品国产一区二区电影| 亚洲欧美中文日韩在线v日本| 国产精品盗摄久久久| 亚洲永久免费观看| 精品亚洲夜色av98在线观看| 日本精品视频在线观看| 亚洲国产精品专区久久| 日韩免费在线看| 26uuu久久噜噜噜噜| 福利一区福利二区微拍刺激| 色综合天天综合网国产成人网| 中文字幕亚洲情99在线| xxxx欧美18另类的高清| 久久国内精品一国内精品| 欧美精品久久久久久久免费观看| 一区二区三区 在线观看视| 在线播放日韩av| 亚洲第一男人天堂| 亚洲欧美自拍一区| 国产成人激情视频| 91香蕉嫩草神马影院在线观看| 国产日韩欧美电影在线观看| 久久天天躁狠狠躁夜夜躁2014| 日韩精品在线播放| 国产精品av免费在线观看| 亚洲黄色av女优在线观看| 日韩av观看网址| www.欧美三级电影.com| 精品视频一区在线视频| 国自产精品手机在线观看视频| 国产精品网站视频| 精品欧美国产一区二区三区| 国产精品精品一区二区三区午夜版| 欧美极品美女视频网站在线观看免费| 欧美极品在线视频| 精品香蕉在线观看视频一| 韩曰欧美视频免费观看| 91在线视频导航| 97精品在线观看| 精品伊人久久97| 久久成人av网站| 日韩av成人在线观看| 亚洲最大福利视频网| 91高清视频在线免费观看| 色无极亚洲影院| 欧美与欧洲交xxxx免费观看| 国产97人人超碰caoprom| 国产精品91在线| 国产成人啪精品视频免费网| 欧美日韩美女视频| 国产精品网站视频| 日韩欧美精品免费在线| 亚洲人精选亚洲人成在线| 在线观看日韩欧美| 久久成人亚洲精品| 欧美激情亚洲另类| 不卡av电影院| 亚洲精品美女久久| 久久亚洲欧美日韩精品专区| 久久久久久久爱| 91国产精品电影| 欧美日韩国产第一页| 欧美午夜精品久久久久久久| 97久久久久久| 亚洲美女又黄又爽在线观看| 大胆欧美人体视频| 久久99国产精品自在自在app| 亚洲高清福利视频| 欧美在线一级va免费观看| 欧美一级高清免费播放| 国产美女精品视频| 亚洲香蕉在线观看| 国产成人高清激情视频在线观看| 国产精品久久视频| 操人视频在线观看欧美| 久久精品一区中文字幕| 亚洲网站在线播放| 亚洲国产精品人人爽夜夜爽| 韩国美女主播一区| 在线观看国产欧美| 538国产精品一区二区免费视频| 黄色成人av在线| 最近2019中文免费高清视频观看www99| 欧美精品在线免费播放| 精品在线小视频| 欧美精品在线播放| 欧美裸体xxxx|