【PHP入门到精通】:Ch04:流程控制语句
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:流程控制语句的更多相关文章
- js入门第二篇之流程控制语句
表达式语句: 一个表达式可以产生一个值,有可能是运算.函数调用 字面量 表达式可以放在任何需要值的地方. 语句: 语句可以理解成一个行为,循环语句和判断语句就是典型的语句,一个程序有多个语句组成. 流 ...
- ARKit从入门到精通(2)-ARKit工作原理及流程介绍
转载:http://blog.csdn.net/u013263917/article/details/73038519 1.1-写在前面的话 1.2-ARKit与SceneKit的关系 1.3-ARK ...
- 【转载】salesforce 零基础开发入门学习(二)变量基础知识,集合,表达式,流程控制语句
salesforce 零基础开发入门学习(二)变量基础知识,集合,表达式,流程控制语句 salesforce如果简单的说可以大概分成两个部分:Apex,VisualForce Page. 其中Apex ...
- Python 入门之流程控制语句
Python 入门之流程控制语句 1.if判断 (1) 单 if if –-如果 if 条件: 缩进 结果 (官方推荐4个空格,或者一个tab 不能空格和tab混合使用) money = 10 pri ...
- ASP入门(四)-VBScript的流程控制语句
VBScript条件语句 我们可以使用四种条件语句 If - Then - 语句 If - Then - Else 语句 If - Then - ElseIf 语句 Select - Case 语句 ...
- 【PHP】PHP从入门到精通(一)——想学习PHP的小伙伴的福利来了!
PHP从精通到入门 (一)PHP简介和基本知识 PHP(外文名:PHP: Hypertext Preprocessor,中文名:"超文本预处理器")是一种通用开源脚本语言.语法吸 ...
- 【PHP】最详细PHP从入门到精通(一)——想学习PHP的朋友们福利来了!
PHP从入门到精通 (一)PHP简介和基本知识 PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言.语法吸收了C语言.Java ...
- MySQL数据库应用 从入门到精通 学习笔记
以下内容是学习<MySQL数据库应用 从入门到精通>过程中总结的一些内容提要,供以后自己复现使用. 一:数据库查看所有数据库: SHOW DATABASES创建数据库: CREATE DA ...
- 《C#从入门到精通(第3版)》目录
C#从入门到精通(第3版)pdf+源码 一.基础知识 1.初识C#及其开发环境 2.开始C#之旅 3.变量与常量 4.表达式与运算符 5.字符与字符串 6.流程控制语句 7.数组与集合 8.属性和方法 ...
随机推荐
- redis系列之redis是什么
一.简介 REmote DIctionary Server(Redis),redis是一个基于内存的单机key/value系统,类似memcached,但支持value为多种形式,包括:字符串(str ...
- linux查询cpu核心数
linux怎么查询cpu核心数 1.查看逻辑CPU个数: #cat /proc/cpuinfo |grep "processor"|sort -u|wc -l24 2.由于有超线程 ...
- Linear Regression
大学时候学物理实验的时候接触过线性回归,现在忘记了...还得重新拾起来.学习不扎实耽误了多少时光... sigh Suppose that you time a program as a functi ...
- JVM内存区域划分
前言 Java程序的运行是通过Java虚拟机来实现的.通过类加载器将class字节码文件加载进JVM,然后根据预定的规则执行.Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同 ...
- c# 串行【序列化】和解串【反序列化】
C# 串行[序列化]和解串[反序列化] 一. 什么是序列化和反序列话呢? 相信我们做程序的都会遇到这种情况,需要将C#中某一个结构很复杂的类的对象存储起来,或者通过网路传输到远程的客户端程序中去, ...
- JQUERY与JS的区别
JQUERY与JS的区别 <style type="text/css"> #aa { width:200px; height:200px; } </style&g ...
- 怎样用delphi关闭并重新启动 explorer.exe进程
uses Tlhelp32; function KillTask(ExeFileName:string):integer; const PROCESS_TERMINATE = $0001; var C ...
- 标准类型内建函数 str()和 repr() (及 `` 运算符) 简单介绍
内建函数 str() 和 repr() 或反引号运算符(``) 可以方便的以字符串的方式获取对象的内容.类型.数值属性等信息.str()函数得到的字符串可读性好, 而repr()函数得到的字符串通常可 ...
- sysfs实例
转自:http://blog.chinaunix.net/u1/51562/showart_1076295.html 一:前言 在设备模型中,sysfs文件系统用来表示设备的结构.将设备的层次结构形象 ...
- BZOJ 1047 理想的正方形(单调队列)
题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=1047 题意:给出一个n*m的矩阵.在所有K*K的子矩阵中,最大最小差值最小的是多少? 思 ...