當被判斷的值是常數(固定不變的值)時,switch的運作效率比ifelse的運作效率高;(建議學習:PHP程式從入門到精通)
$status=3; // 变判断的值为常量 switch($status){ case 1: echo '常量值为1'; break; // 跳出循环 case 2: echo '常量值为2'; break; case 3: echo '常量值为3'; break; }
當被判斷值為變量,ifelse的運行效率高於switch,ifelse貫徹一判到底的方針,會從第一個條件開始判斷,直到最後一個else,所以學會使用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的值为不知道'; }
PS:ifelse和switch同樣可用於單條件判斷,但ifelse適用於多條件判斷而switch不適用。
$a = $_GET['a']; // 通过get传值后接值; 被判断的值 if(!empty($a) && $a=1){ echo '变量a的值为1'; }elseif(!empty($a) && $a=2){ echo '变量a的值为2'; }elseif(!empty($a) && $a=3){ echo '变量a的值为3'; }else{ echo '变量a的值为不知道'; }
以上是php中if和switch的區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!