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. 使用 Nginx 和 GeoIP 模块来处理不同国家的访问

    安装 Nginx因为要用到 http_geoip_module 模块,系统自带的 nginx 一般不带这个模块,所以要下载 nginx 源代码后自行编译: # wget http://nginx.or ...

  2. Spring中 @Autowired注解与@Resource注解的区别

    Spring中 @Autowired注解与@Resource注解的区别在Spring 3.X中经常使用到@Autowired和@Resource进行装配.这两个注解的差异在何处???相同点:@Reso ...

  3. .NET在EF中使用sql,用动态类吧!

    .NET在EF中使用sql,用动态类吧! 前言 在.NET中使用Entity Framework能快速.方便地结合LINQ来对数据库进行一系列的增删改查操作.但是由于EF根据表达式最后生成通用的sql ...

  4. 转:Maven介绍(创建工程项目以及下载所需要的jar包)

    http://blog.csdn.net/guanghua2009/article/details/6644111 目前我还不太会用maven,慢慢学吧 目前就是用来下载自己要的jar包,先根据这篇转 ...

  5. z-index无效问题的解决方法

    在使用z-index这个属性之前,我们必须先了解使用z-index的必要条件: 1.要想给元素设置z-index样式,必须先让它变成定位元素,说的明白一点,就是要给元素设置一个postion:rela ...

  6. hive-0.12升级成hive 0.13.1

    安装了0.12之后,听说0.13.1有许多新的特性,包括永久函数,所以想更新成0.13版的(元数据放在mysql中) 2014年8月5日实验成功 hive0.13.1的新特性 新特性详见 http:/ ...

  7. spring各个包之间的依赖关系

    从图中可以看到: 1.spring core,spring beans被其他较多包依赖,spring aop,spring context,spring expression分别被两个包依赖,而spr ...

  8. Android提供了5种方式存储数据:

    --使用SharedPreferences存储数据: --文件存储数据: --SQLite数据库存储数据: --使用ContentProvider存储数据: --网络存储数据: 一:使用SharedP ...

  9. Android 代码监控apk安装,卸载,替换

    public class GetBroadcast extends BroadcastReceiver { private static GetBroadcast mReceiver = new Ge ...

  10. Setup Entity Framework Environment

    http://www.entityframeworktutorial.net/EntityFramework5/setup-entityframework-environment.aspx Entit ...