php中switch與ifelse的效率區(qū)別及適用情況分析
本文實(shí)例分析了php中switch與ifelse的效率區(qū)別及適用情況。分享給大家供大家參考。具體分析如下:
PHP中的這兩個(gè)方法都是用于判斷值是否滿足條件,如果滿足/不滿足做出不同行為動(dòng)作。
不管寫什么語言的程序,一定會(huì)考慮到代碼的運(yùn)行效率問題。在查閱了一些資料后,switch與ifelse在不同的‘環(huán)境'下效率各有優(yōu)勝。
1、當(dāng)被判斷的值是常量(固定不變的值)時(shí),switch的運(yùn)行效率比ifelse的運(yùn)行效率高;
$changliang=3; // 變判斷的值為常量 switch($changliang){ case 1: echo '常量值為1'; break; // 跳出循環(huán) case 2: echo '常量值為2'; break; case 3: echo '常量值為3'; break; }
2、當(dāng)被判斷值為變量,ifelse的運(yùn)行效率高于switch,ifelse貫徹一判到底的方針,會(huì)從第一個(gè)條件開始判斷,直到最后一個(gè)else,所以學(xué)會(huì)使用switch有好處;
$a = $_GET['a']; // 通過get傳值后接值; 被判斷的值 if($a=1){ echo '變量a的值為1'; }elseif($a=2){ echo '變量a的值為2'; }elseif($a=3){ echo '變量a的值為3'; }else{ echo '變量a的值為不知道'; }
希望本文所述對(duì)大家的php程序設(shè)計(jì)有所幫助。
相關(guān)文章
php5中date()得出的時(shí)間為什么不是當(dāng)前時(shí)間的解決方法
從php5.10開始,php中加入了時(shí)區(qū)的設(shè)置,在php中顯示的時(shí)間都是格林威治標(biāo)準(zhǔn)時(shí)間,這就造成了我們 中國(guó)的用戶會(huì)差八個(gè)小時(shí)的問題!2008-06-06PHP實(shí)現(xiàn)守護(hù)進(jìn)程的示例代碼
守護(hù)進(jìn)程到底是怎么實(shí)現(xiàn)的?為什么有的程序既可以自己就成為守護(hù)進(jìn)程,又可以通過systemd 來后臺(tái)運(yùn)行?本文將為大家具體講解,感興趣的可以了解一下2022-05-05php使用pdo連接mssql server數(shù)據(jù)庫實(shí)例
這篇文章主要介紹了php使用pdo連接mssql server數(shù)據(jù)庫的方法,以實(shí)例形式分析了php使用pdo連接mssql server數(shù)據(jù)庫的技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2014-12-12PHP基于php_imagick_st-Q8.dll實(shí)現(xiàn)JPG合成GIF圖片的方法
這篇文章主要介紹了PHP基于php_imagick_st-Q8.dll實(shí)現(xiàn)JPG合成GIF圖片的方法,需要的朋友可以參考下2014-07-07