Ch04: 流程控制语句
4.1 条件控制语句
(1)
if (expr) 

statement1;
statement2;

(2)
if (expr) 

statement1; 

else 

statement2; 

(3)
if (expr1) 

statement1; 
}else if (expr2)

statement2; 
}...
...
}else 

statementN; 
}
(4)
switch (var) 

case value1: 
statement1; 
break; 
case value2: 
statement2; 
break; 
... 
default: 
statementN; 
}

注意:
如果执行语句不只一条,请在执行语句前后加上"{}"号,因为控制语句的范围只能控制跟随其后的第一条语句
在switch语句中,遇到合乎要求的case语句段时,程序也会继续往下一个case执行。直到switch语句结束。
这并不是我们所想要的,所以一定要在每个case语句段后加上break语句,以便执行完当前case语句后可以跳出来。
PHP还提供了另一种书写格式:用":"号代替左边的大括号"{"; 使用endif; endwhile; endfor; endforeach;和endswitch; 来代替右边的大括号"}"
4.2 循环控制语句
(1)
while (expr) 

statements; 

(2) 
do 

statements; 
}while (expr) 
(3)
for (expr1; expr2; expr3) 

statements; 

(4)
foreach (array_expr as $value) 

statements; 

或:
foreach (array_expr as $key => $value) 

statements; 

注意: 
(1)foreach是PHP4引进来的,只能用于数组。在PHP5中,又增加了对对象的支持。
foreach语句将遍历数组array_expr, 每次循环时,将当前数组中的值赋给$value(或是$key和$value),同时数组指针向后移动直到遍历结束。 所以当使用foreach语句时,数组指针将自动被重置,不需要手动设置指针位置。
(2)当使用foreach语句用于其他数据类型或者未初始化的变量时会产生错误。 为了避免这个问题,最好使用is_array()函数先来判断变量是否为数组类型,如果是,再进行接下来的操作。
(3)跳出循环关键字:break 和 continue 
break跳出本层循环;continue跳出本次循环而进入到下一次循环。
在PHP中,break 还可以跳出多重循环,用法:break $num

【PHP入门到精通】:Ch04:流程控制语句的更多相关文章

  1. js入门第二篇之流程控制语句

    表达式语句: 一个表达式可以产生一个值,有可能是运算.函数调用 字面量 表达式可以放在任何需要值的地方. 语句: 语句可以理解成一个行为,循环语句和判断语句就是典型的语句,一个程序有多个语句组成. 流 ...

  2. ARKit从入门到精通(2)-ARKit工作原理及流程介绍

    转载:http://blog.csdn.net/u013263917/article/details/73038519 1.1-写在前面的话 1.2-ARKit与SceneKit的关系 1.3-ARK ...

  3. 【转载】salesforce 零基础开发入门学习(二)变量基础知识,集合,表达式,流程控制语句

    salesforce 零基础开发入门学习(二)变量基础知识,集合,表达式,流程控制语句 salesforce如果简单的说可以大概分成两个部分:Apex,VisualForce Page. 其中Apex ...

  4. Python 入门之流程控制语句

    Python 入门之流程控制语句 1.if判断 (1) 单 if if –-如果 if 条件: 缩进 结果 (官方推荐4个空格,或者一个tab 不能空格和tab混合使用) money = 10 pri ...

  5. ASP入门(四)-VBScript的流程控制语句

    VBScript条件语句 我们可以使用四种条件语句 If - Then - 语句 If - Then - Else 语句 If - Then - ElseIf 语句 Select - Case 语句 ...

  6. 【PHP】PHP从入门到精通(一)——想学习PHP的小伙伴的福利来了!

     PHP从精通到入门 (一)PHP简介和基本知识 PHP(外文名:PHP: Hypertext Preprocessor,中文名:"超文本预处理器")是一种通用开源脚本语言.语法吸 ...

  7. 【PHP】最详细PHP从入门到精通(一)——想学习PHP的朋友们福利来了!

     PHP从入门到精通 (一)PHP简介和基本知识 PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言.语法吸收了C语言.Java ...

  8. MySQL数据库应用 从入门到精通 学习笔记

    以下内容是学习<MySQL数据库应用 从入门到精通>过程中总结的一些内容提要,供以后自己复现使用. 一:数据库查看所有数据库: SHOW DATABASES创建数据库: CREATE DA ...

  9. 《C#从入门到精通(第3版)》目录

    C#从入门到精通(第3版)pdf+源码 一.基础知识 1.初识C#及其开发环境 2.开始C#之旅 3.变量与常量 4.表达式与运算符 5.字符与字符串 6.流程控制语句 7.数组与集合 8.属性和方法 ...

随机推荐

  1. 本地替换文件读取MYSQL密码

    Mysql 的密码默认是存储在/data/mysql/下面的三个文件中:user.MYD,user.frm,user.MYI 先把这三个文件下载到本地,然后替换本地的这三个文件 使用net stop ...

  2. ios开发 ad hoc

    iOS证书分2种,1种是开发证书,用来给你(开发人员)做真机测试的:1种是发布证书,发布证书又分发布到app store的(这里不提及)和发布测试的ad hoc证书. 那ad hoc证书和开发证书区别 ...

  3. SPRING IN ACTION 第4版笔记-第十一章Persisting data with object-relational mapping-004JPA例子的代码

    一.结构 二.Repository层 1. package spittr.db; import java.util.List; import spittr.domain.Spitter; /** * ...

  4. JAVA编译异常处理:java.lang.OutOfMemoryError: PermGen space

    在Intellij开发工具中编译JAVA项目,出现以下错误: 六月 21, 2016 6:28:07 下午 org.apache.tomcat.util.modeler.BaseModelMBean ...

  5. Ubuntu LAMP搭建

    为了数据库课程设计,只好自己搭一个数据库系统,采用LAMP方式. 一.安装 1.安装Apache sudo apt-get install apache2 Apache在安装期间会新建一个目录:/va ...

  6. Data Flow ->> OLE Command

    这里有篇博客文章是讲这个OLE Command的:http://www.cnblogs.com/tylerdonet/archive/2011/06/20/2085490.html OLE Comma ...

  7. [c/c++]指针数组 pk 数组指针

    首先强调 指针数组归根结底是个数组:数组指针归根结底是个指针. 数组指针 以int (*int)[10]为例 ()的优先级大于[],因此首先它是一个指针,它指向一个数组,数组的维数是10.因此数组指针 ...

  8. 批处理 —— 每天生成一个以日期命名的文件(Win XP)

    想达到这样一个效果:每天在某个目录下生成一个以日期命名的文件(如,0705.txt). 第一步,新建一个批处理文件 新建一个文件,比如[create_day_file.bat].编辑,输入以下内容 : ...

  9. Mac 如何截屏(快捷键)

    全屏截图:Command + Shift + 3 使用快捷键后会马上截取当前的全屏 指定区域截图:Command + Shift + 4 使用快捷键后会出来一个带有座标的瞄准器,用鼠标的拖放可以选择需 ...

  10. 两个学生OJ差集

    这个程序非常简单,因为用了最笨的办法,不过运行一点儿也不慢... 在我们学校OJ平台每个人的个人信息中都有Solved Problems List,我们可以用这个简单的程序输入两个人解决问题的所有题号 ...