"/>
·设为首页收藏本站📧邮箱修改🎁免费下载专区💎积分✅卡密📒收藏夹👽聊天室
DZ插件网 门户 站长圈 查看内容

PHPSwitch——执行不同的代码

2022-3-19 04:10| 发布者: admin| 查看: 129| 评论: 0|原作者: 架构师学习路线

摘要: 前言/PREFACEswitch语句和if...elseif...else语句相似,也是一种分支结构,只不过与if...elseif...else等语句相比,switch的语句更加明...

前言/PREFACE

switch语句和if...else if...else 语句相似,也是一种分支结构,只不过与if...else if...else等语句相比, switch的语句更加明了简洁。




switch 语句类似于具有同一个表达式的一系列if语句。很多场合下需要把同一个变量(或表达式)与很多不同的值比较,并根据它等于哪个值来执行不同的代码。这正是 switch 语句的用途。




01

Switch语句


switch 语句由一个表达式和多个 case 标签组成,case 标签后紧跟一个代码块,case 标签作为这个代码块的标识。switch 语句的语法格式如下:

switch 语句根据表达式的值,依次与 case 中的值进行比较,如果不相等,继续查找下一个 case;如果相等,就会执行对应的语句,直到 switch 语句结束或遇到 break 为止。

一般来说,switch 语句最终都有一个默认值 default,如果在前面的 case 中没有找到相符的条件,则执行默认语句,和 else 语句类似。

switch 语句的执行流程如下图所示:

在使用switch 语句时应该注意以下几点:

a)、和if 语句不同的是,switch 语句后面表达式的数据类型只能是整型或字符串,不能是bool 型。通常这个表达式是一个变量名称,虽然 PHP是弱类型语言,在 switch后面表达式的变量可以是任意类型数据,但为了保证匹配执行的准确性,最好只使用整型或字符串中的一种类型。

b)、和if语句不同的是,switch语句后面的花括号是必须有的。

c)、case 语句的个数没有规定,可以无限增加。但case 标签和 case 标签后面的值之间应该有一个空格,值后面必须有一个冒号,这是语法的一部分。

d)、switch 匹配完成以后,将依次逐条执行匹配的分支模块中的语句,直到 switch 结构结束或者遇到了 break 语句才停止执行。所以,如果一个分支语句的后面没有写上 break 语句,程序将会继续执行下一个分支语句的内容。

e)、与if语句中的else类似,switch 语句中 default 标签直接在后面加上一个冒号,看似没有条件,其实是有条件的,条件就是“表达式”的值不能与前面任何一个 case标签后的值相等,这时才执行default 分支中的语句。default 标签和if中的 else子句一样,它不是 switch 语句中必需的,可以省略。




02

Switch语法






03

Switch实例


对表达式(通常是变量)进行一次计算;

把表达式的值与结构中 case 的值进行比较;

如果存在匹配,则执行与 case 关联的代码;

代码执行后,break 语句阻止代码跳入下一个 case 中继续执行;

如果没有 case 为真,则使用 default 语句。


*声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜



上一篇:PHP程序员的七大必杀招式
下一篇:PHP中的命名空间

鲜花

握手

雷人

路过

鸡蛋

评论

您需要登录后才可以发表言论 登录立即注册
创宇盾启航版免费网站防御网站加速服务
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:3.144.86.38,GMT+8, 2024-11-24 00:10 , Processed in 0.159109 second(s), 46 queries , Gzip On, Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2024 Discuz! Team.

关灯
扫一扫添加微信客服
QQ客服返回顶部
返回顶部