介绍
如果程序需要一系列的if语句来执行不同的过程来改变表达式的值,则每个if语句都有自己的大括号,这可能会变得很笨拙。在这里,使用swtich-case构造可以使程序紧凑且易读。使用switch构造,可以将相同的变量(或表达式)与许多不同的值进行比较,并根据其等于哪个值来执行不同的代码段。
语法
switch (expr) { case val1: code to be executed if expr=val1; break; case val2: code to be executed if expr=val2; break; ... ... default: code to be executed if expr is not equal to any of above values; } 在每个case块之后给出break语句很重要,这样可以使剩下的case程序流无效。
在下面的示例中,要求用户输入两个数字和一个数字,作为算术运算类型的1/2/3/4,用于加/减/乘/除
示例
<?php $first=(int)readline("enter a number"); $second=(int)readline("enter another number"); $x=readline("enter 1/2/3/4 for add/subtract/multiply/divide"); $result=0; switch($x){ case 1: echo $first+$second; break; case 2: echo $first-$second; break; case 3: echo $first*$second; break; case 4: echo $first/$second; break; default: echo "Incorrect input"; } ?> 输出结果
这将产生以下结果-
Incorrect input
的默认如果开关表达式不匹配特定的情况下要执行的关键字用于指定语句块
如果特定案例块为空,则将流程简单地传递到下一个案例。
示例
<?php $x=(int)readline("enter a number"); switch($x){ case 1: case 2: echo "x is less than 3"; break; case 3: echo "x is equal to 3"; break; case 4: echo "x is greater than 3";break; default: echo "x is beyound 1 to 4"; } ?> 输出结果
这将产生以下结果-
x is beyound 1 to 4
可以使用字符串值与开关表达式进行比较
示例
<?php $x=readline("enter a something.."); switch($x){ case "India": echo "you entered India"; break; case "USA": echo "You typed USA"; break; case "Mumbai": echo "you entered Mumbai";break; default: echo "you entered something else"; } ?> 输出结果
这将产生以下结果-
you entered something else
热门文章
- 3月16日22.1M/S|Shadowrocket/SSR/Clash/V2ray免费节点每天更新订阅链接,代理机场推荐
- 加盟宠物店挣钱吗(加盟宠物店大概需要多少钱)
- Spring全家桶-Spring Security之自定义表单,认证,鉴权
- 宠物疫苗可以上地铁吗北京(北京宠物猫可以上地铁吗)
- 4月5日20.2M/S|Shadowrocket/SSR/Clash/V2ray免费节点每天更新订阅链接,代理机场推荐
- 动物防疫站几点关门 动物防疫站几点关门啊
- 南京宠物猫领养中心电话地址查询(南京猫咪领养中心)
- 南京领养狗狗多少钱(南京市宠物领养)
- 厦门宠物狗免费赠送 厦门宠物狗免费赠送活动
- 十大宠物品牌排行榜图片(十大宠物品牌排行榜图片)