php中switch语句用法详解
本文介绍php中的switch语句的用法,它跟其他语句中的switch用法差不多的,但注意有有一个break语句。
PHP中switch语句的标准语法:
switch(expression) { caselabel1: codetobeexecutedifexpression=label1; break; caselabel2: codetobeexecutedifexpression=label2; break; default: codetobeexecuted ifexpressionisdifferentfrombothlabel1andlabel2; }
举例:
switch($i){ case1: echo1; break; case2: echo2; break; default: echo'others'; }
也可以使用switch来判断一个取值范围,或者说是在case中自定义条件。
<?php header("content-type:text/html;charset=utf8"); $score=50; switch($score) { case$score>=90&&$score<=100: echo"优<br>"; break; case$score>=80&&$score<90: echo"良<br>"; break; case$score>=70&&$score<80: echo"中<br>"; break; case$score>=60&&$score<70: echo"及格<br>"; break; case$score>=0&&$score<60: echo"不及格<br>"; break; default: echo"成绩输入错误<br>"; } ?>
简单示例
<?php //switch细节 //情况一:数值匹配的时候自动转换成字串 $a=1; switch($a){ case"1": echo'hello1'; break; default: echo'sorrynoneisthesame!'; break; } echo'<br/>'.'成功退出····'; echo'<hr/>'; //情况二:数值匹配的时候自动转换成字符 $a=1; switch($a){ case'1': echo'hello2'; break; default: echo'sorrynoneisthesame!'; break; } echo'<br/>'.'成功退出····'; echo'<hr/>'; //情况三:字符匹配的时候自动转换成数值 $a='1'; switch($a){ case1: echo'hello3'; break; default: echo'sorrynoneisthesame!'; break; } echo'<br/>'.'成功退出····'; echo'<hr/>'; //情况四:字串匹配的时候自动转换成数值 $a="1"; switch($a){ case1: echo'hello4'; break; default: echo'sorrynoneisthesame!'; break; } echo'<br/>'.'成功退出····'; echo'<hr/>'; //情况五:float也可以匹配 $a=1.1; switch($a){ case1.1: echo'hello5'; break; default: echo'sorrynoneisthesame!'; break; } echo'<br/>'.'成功退出····'; echo'<hr/>'; //情况六:非0是true $a=true; switch($a){ case1: echo'hello6'; break; casetrue: echo'hello61'; break; default: echo'sorrynoneisthesame!'; break; } echo'<br/>'.'成功退出····'; echo'<hr/>'; //情况七:能匹配boolean $a=true; switch($a){ casetrue: echo'hello7'; break; case2: echo'hello71'; break; default: echo'sorrynoneisthesame!'; break; } echo'<br/>'.'成功退出····'; echo'<hr/>'; //情况八:能匹配null $a=null; switch($a){ case2://''""false0都能进入 echo'hello8'; break; casenull: echo'hello81'; break; default: echo'sorrynoneisthesame!'; break; } echo'<br/>'.'成功退出····'; echo'<hr/>'; //情况九:退出顺序 $a=5; switch($a){ case1: echo'hello6'; break; case2: echo'我是2号出口'; break; case5: echo'我是5号出口'; //break; casetrue: echo'hello61'; break; default: echo'sorrynoneisthesame!'; break; } echo'<br/>'.'成功退出····'; echo'<hr/>'; //情况十:退出顺序 $a=50; switch($a){ default: echo'sorrynoneisthesame!'; //break; case50: echo'hello6'; //break; case2: echo'我是2号出口'; break; case5: echo'我是5号出口'; //break; case6: echo'hello61'; break; } echo'<br/>'.'成功退出····'; echo'<hr/>'; ?>
运行结果
hello1 成功退出···· hello2 成功退出···· hello3 成功退出···· hello4 成功退出···· hello5 成功退出···· hello6 成功退出···· hello7 成功退出···· hello81 成功退出···· 我是5号出口hello61 成功退出···· hello6我是2号出口 成功退出····