一、概述:

上面一章我们讲解了PHP当中的运算符和表达式,通过上面的知识点我们就可以完成一些基本的运算操作了。但是涉及到一些比较复杂的逻辑,分支与循环就必不可少了。通过分支和循环的结合使用可以使业务更加复杂,代码功能更加强大。

二、常见的分支结构 if语句

1 单个 if 语句

基本格式:

if(条件表达式){

语句组;

//语句组为单条语句时可省略“{ }”。

}

当条件表达式的值为真(true)时,PHP将执行语句组,相反条件表达式的值为假(false)时,PHP将不执行语句组,忽略语句组执行下面的语句,可以参照下图

2 双向条件分支语句

格式如下

if(条件表达式){

语句组1

}else{

语句组2

}

if-else 条件判断与 if 条件判断类似,所不同的是,if-else 语句的条件表达式值为真(true)时,会执行 if 的本体语句(语句组1),而条件表达式值为假(false)时,则执行 else 的本体语句(语句组2)。

3 多向条件分支语句

格式如下

if(条件表达式1){

语句块1

}elseif(条件表达式1){

语句块2

}elseif(条件表达式n){

语句块n

}else{

语句块n+1

}

同上类似,只是在if后面添加多个 elseif选项,这样整条语句可以过滤更多的条件。

三、常见的分支结构 switch语句

switch- case语句语法:

switch(表达式){

case  值1:

语句序列1;      break;

case  值2:

语句序列2;      break;

default:

语句序列 n;      break;

}

当程序执行碰到switch条件判断时,它会取出键值,并与case的各个情况对比。当遇到匹配的条件时,会执行case里面语句,直到遇到break语句为止。

需要注意的是 switch语句与if语句不同,它仅能判断恒等的关系,switch语句中case子句的常量可以是整型常量、字符型常量、表达式或变量,不可以是其他类型。

在同一个switch中,case子句的常量不能相同,否则第二个值永远无法匹配到。

四、常见的循环语句

1 while语句

while循环语法:

while(表达式){

语句或语句序列

}

当while循环语句中表达式真时,程序将一直会执行循环体里面的内容,直到满足条件是假的时候才停止执行该段程序。如果条件一直是真,则该循环会一直循环下去,这就是死循环。所以我们在使用循环的时候,需要注意以下两个原则。

2 do while语句

基本格式:

do{

语句或语句序列

}while(表达式);

程序会先执行 do 语句体中的语句(循环体),然后再检查表达式(循环控制语句)的值,如果符合条件式(值为真),就再进行 do 语句体中的语句,直到条件不符合停止。

3 for循环

基本格式:

for(表达式1;表达式2;表达式3)

{

语句或语句序列;

}

for循环语句中表达式1为循环初始条件;表达式2为循环控制条件;表达式3为控制变量递增;语句或语句序列为循环体。

4 特殊控制语句

1. break

我们之前在 switch 条件判断中已经使用过 break 关键字,它会使得程序终止当前作用域 switch 本体中的语句,如果 break 使用在 for、while 或 do-while 循环结构中时,程序将会跳出循环

2. continue

continue 的作用与 break 有点类似,continue 若使用在 for、while 或 do-while循环结构中,当程序执行至 continue 时,之后的语句将直接被略过,而直接执行下一次循环

3. exit

当前的脚本中只要执行到exit语句,而不管它在哪个结构中都会直接退出当前脚本。

通过本章内容,我们可以清楚的了解分支和循环的使用,可以更好的控制流程来处理复杂的业务,大家可以能会感觉代码比较多,比较乱。下节将和大家一起学习下函数的使用,了解下如何编写更加简洁高效的代码。

【.net 深呼吸】细说CodeDom(8):分支与循环

有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...

SQL变量、运算符、分支、循环语句

变量: SQL语言也跟其他编程语言一样,拥有变量.分支.循环等控制语句. 在SQL语言里面把变量分为局部变量和全局变量,全局变量又称系统变量. 局部变量: 使用declare关键字给变量声明,语法非常 ...

SQL连接查询、变量、运算符、分支、循环语句

连接查询:通过连接运算符可以实现多个表查询.连接是关系数据库模型的主要特点,也是它区别于其它类型数据库管理系统的一个标志. 常用的两个链接运算符: 1.join   on 2.union 在关系数据库 ...

java里的分支语句--程序运行流程的分类(顺序结构,分支结构,循环结构)

JAVA里面的程序运行流程分三大类: 1,顺序结构:顺序结构就是依次执行每一行代码 2,分支结构:分支结构就是按不同的条件进行分支 3,循环结构:一段代码依条件进行循环执行. 其中,分支结构有两大类: ...

MSIL 教程(二):数组、分支、循环、使用不安全代码和如何调用Win32 API(转)

转自:http://www.cnblogs.com/Yahong111/archive/2007/08/16/857574.html 续上文[翻译]MSIL 教程(一) ,本文继续讲解数组.分支.循环 ...

了不起的分支和循环03 - 零基础入门学习Python009

了不起的分支和循环03 让编程改变世界 Change the world by program while循环 说完了分支我们来说说循环,标准的while循环语法我们已经可以熟悉掌握了. 这里我们就简 ...

了不起的分支和循环02 - 零基础入门学习Python008

了不起的分支和循环02 让编程改变世界 Change the world by program 上节课,小甲鱼教大家如何正确的打飞机,其要点就是:判断和循环,判断就是该是不该做某事,循环就是持续做某事 ...

了不起的分支和循环01 - 零基础入门学习Python007

了不起的分支和循环01 让编程改变世界 Change the world by program 我们今天的主题是"了不起的分支和循环",为什么小甲鱼不说C语言,不说Python了不 ...

R学习笔记 第四篇:函数,分支和循环

变量用于临时存储数据,而函数用于操作数据,实现代码的重复使用.在R中,函数只是另一种数据类型的变量,可以被分配,操作,甚至把函数作为参数传递给其他函数.分支控制和循环控制,和通用编程语言的风格很相似, ...

随机推荐

共享文件夹:The user has not been granted the requested logon type at this computer

场景重现 今天做一个项目测试,要用到虚拟机,于是在虚拟机(XP 32)上新建了一个共享的文件夹.然后我在Win7 机器上访问它得到如下的error 消息:

基于WDF的PCI/PCIe接口卡Windows驱动程序(5)-如何为硬件移植驱动程序

php分支,PHP 分支与循环相关推荐

  1. 【Java】流程控制 - 顺序结构、 选择(分支)结构(单分支、双分支、多分支、嵌套)、循环结构(for、while、do...while)、跳转语句(break、continue)

    流程控制语句结构 文章目录 流程控制语句结构 一. 顺序结构 1. 输出语句 2. 输入语句 3.code 二.复合语句 三. 分支结构 1. 条件判断 1.单分支结构 2.双分支结构 3.多分支结构 ...

  2. python控制结构(一)if分支入门_【2020Python修炼记12】Python语法入门—流程控制(if分支结构+while/for循环结构)...

    一.条件 灵魂三问: 什么是条件?什么可以当做条件?为何要用条件? 1. 条件,就是判断依据,判断前提-- 2.条件的类型 # 第一大类:显式布尔值 条件可以是:比较运算符 # age = 18 # ...

  3. python能用分支结构写出循环的算法吗_python二级考试-试题8.doc

    python二级考试-试题8.doc -1.数据库设计中反映用户对数据要求的模式是___________.A概念模式B内模式C设计模式D外模式正确答案2.一个工作人员可使用多台计算机,而一台计算机被多 ...

  4. python条件表达式有哪几个_python条件表达式:多项分支,双向分支

    # ### 多项分支 ''' if 条件表达式1: code1 code2 elif 条件表达式2: code3 code4 elif 条件表达式3: code5 code6 else: code7 ...

  5. python条件表达式:多项分支,双向分支

    # ### 多项分支 ''' if 条件表达式1:code1code2 elif 条件表达式2:code3code4 elif 条件表达式3:code5code6 else:code7如果条件表达式1 ...

  6. Git删除分支/恢复分支

    这是https://www.cnblogs.com/utank/p/7880441.html的方法,虽然很老现在有点不一样,但总体还是能用的. 总结就是两种方法 1.用commit的id恢复 2.用r ...

  7. git master主分支_Git分支管理策略及简单操作

    前几天整理了一下之前项目的开发代码,当时使用了Git来进行代码版本管理.虽然本人熟悉常用的Git操作,但是对分支的管理经验非常欠缺.拿这个项目来说,在项目中有不下20个分支,每个分支间的继承关系相当之 ...

  8. git 删除本地仓库中的分支_git常用命令行 新建分支 删除分支 提交

    1.查看当前分支: git branch 2.查看所有分支,包含远程分支 : git branch -a 3.新建分支: git checkout -b bug123 4.推送本地分支到远程分支(远程 ...

  9. SVN客户端 创建分支/合并分支/切换分支

    在建立项目版本库时,可首先建好项目文件夹,并在其中建立trunk, branches, tags三个空的子目录.这样在trunk中开始进行开发 trunk是主分支,是日常开发进行的地方. branch ...

最新文章

  1. Java多线程(3)—生产者/消费者
  2. Escape The Maze (easy version) 多源最短路,bfs(1700)
  3. 换脸效果媲美GAN!一文解析OpenAI最新流生成模型「Glow」
  4. linq to sql简单使用
  5. Spring源码研究之how is returned hello string converted to jsp page
  6. jpa命名 多条件查询命名_JPA 2 | 动态查询与命名查询
  7. 【华为云实战开发】15.Maven依赖的JAR包下载慢?赶紧看过来
  8. python制作图片墙_利用python生成照片墙的示例代码
  9. Win11显卡fps很低怎么办?Win11显卡fps很低的解决方法
  10. ubuntu16.04安装PHP5.6和7.0
  11. excel使用数据字典显示数据——宏
  12. OpenFileDiaog.Filter的使用
  13. ZPLII 指令参考
  14. arm64的prefetch/prefetchw/spin_lock_prefetch
  15. 电驴服务器更新的作用,怎样更新eMule(电驴)服务器列表,有什么好处?
  16. 在智能家居音箱领域上的音频功放芯片IC
  17. java小易——Servlet轻量级服务
  18. 营业执照识别,三证合一
  19. 如何编辑epub电子书的目录
  20. 运维日常之机房浪潮服务器硬盘红灯亮起,服务器一直响,raid磁盘红色。。。故障解决方法...

热门文章

  1. 《校园二手商品交易平台设计与实现》 任务书
  2. 本人实现的视频翻译字幕并导出srt
  3. python to_csv追加数据解决表头重复
  4. 一步一步教你装kata-container
  5. 信号与系统控制理论计算机控制实验台QY-DPJ01
  6. vue常用api总结
  7. foxmail绑定公司邮箱服务器地址,企业邮箱如何绑定到Foxmail上?
  8. ubuntu 强制结束某个程序
  9. Swap 2 Secrets via Homomorphic Properties of Shamir Secret Sharing
  10. 针对内存修改的反作弊方法