如果纯粹比较数字或字符,建议使用switch,因为它只会在一开始的switch括号中取出变量值一次,然后将这个值与下面所设定的case比较,但如果使用if,每次遇到条件式时,都要取出变量值,前者效率更好一些
$jiejie=3; // 变判断的值为常量
switch($jiejie){
case 1:
echo '常量值为1';
break; // 跳出循环
case 2:
echo '常量值为2';
break; // 跳出循环
case 3:
echo '常量值为3';
break;
}
$jie = $_POST['a'];
if($jie==1){
echo '变量a的值为1';
}elseif($jie===2){
echo '变量a的值为2';
}elseif($jie==3){
echo '变量a的值为3';
}else{
echo '变量a的值为不知道';
}
其实两者效率差不多,switch写出来的代码整洁,工整一些(一个好的phper 代码一定会很优雅)