Switch语句也是面向对象编程语句中最长常见的逻辑控制语句了。Switch 语句用于执行基于多个不同条件的不同动作 – 即当条件不同的时候,执行不同的逻辑操作。
本文介绍php中的switch语句的用法,它跟其他语句中的switch用法差不多的,但注意有有一个break语句。
PHP中switch语句的标准语法:
switch (expression)
{
case label1:
code to be executed if expression = label1;
break;
case label2:
code to be executed if expression = label2;
break;
default:
code to be executed
if expression is different from both label1 and label2;
}
举例:
switch($i){
case 1:
echo 1;
break;
case 2:
echo 2;
break;
default:
echo 'others';
}
也可以使用switch来判断一个取值范围,或者说是在case中自定义条件。
=90 && $score";
break;
case $score>=80 && $score";
break;
case $score>=70 && $score";
break;
case $score>=60 && $score";
break;
case $score>=0 && $score";
break;
default:
echo"成绩输入错误
";
}
?>
简单示例
'.'成功退出····';
echo '
';
//情况二:数值匹配的时候自动转换成字符
$a=1;
switch($a){
case '1':
echo 'hello2';
break;
default:
echo 'sorry none is the same!';
break;
}
echo '
'.'成功退出····';
echo '
';
//情况三:字符匹配的时候自动转换成数值
$a='1';
switch($a){
case 1:
echo 'hello3';
break;
default:
echo 'sorry none is the same!';
break;
}
echo '
'.'成功退出····';
echo '
';
//情况四:字串匹配的时候自动转换成数值
$a="1";
switch($a){
case 1:
echo 'hello4';
break;
default:
echo 'sorry none is the same!';
break;
}
echo '
'.'成功退出····';
echo '
';
//情况五:float也可以匹配
$a=1.1;
switch($a){
case 1.1:
echo 'hello5';
break;
default:
echo 'sorry none is the same!';
break;
}
echo '
'.'成功退出····';
echo '
';
//情况六:非0是true
$a=true;
switch($a){
case 1:
echo 'hello6';
break;
case true:
echo 'hello61';
break;
default:
echo 'sorry none is the same!';
break;
}
echo '
'.'成功退出····';
echo '
';
//情况七:能匹配boolean
$a=true;
switch($a){
case true:
echo 'hello7';
break;
case 2:
echo 'hello71';
break;
default:
echo 'sorry none is the same!';
break;
}
echo '
'.'成功退出····';
echo '
';
//情况八:能匹配null
$a=null;
switch($a){
case 2://'' "" false 0 都能进入
echo 'hello8';
break;
case null:
echo 'hello81';
break;
default:
echo 'sorry none is the same!';
break;
}
echo '
'.'成功退出····';
echo '
';
//情况九:退出顺序
$a=5;
switch($a){
case 1:
echo 'hello6';
break;
case 2:
echo '我是2号出口';
break;
case 5:
echo '我是5号出口';
//break;
case true:
echo 'hello61';
break;
default:
echo 'sorry none is the same!';
break;
}
echo '
'.'成功退出····';
echo '
';
//情况十:退出顺序
$a=50;
switch($a){
default:
echo 'sorry none is the same!';
//break;
case 50:
echo 'hello6';
//break;
case 2:
echo '我是2号出口';
break;
case 5:
echo '我是5号出口';
//break;
case 6:
echo 'hello61';
break;
}
echo '
'.'成功退出····';
echo '
';
?>
运行结果
hello1
成功退出····
hello2
成功退出····
hello3
成功退出····
hello4
成功退出····
hello5
成功退出····
hello6
成功退出····
hello7
成功退出····
hello81
成功退出····
我是5号出口hello61
成功退出····
hello6我是2号出口
成功退出····
,