当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP学习宝典-第七章

PHP
PhpMyAdmin中无法导入sql文件的解决办法
PHP5.3.1 不再支持ISAPI
基于Windows下Apache PHP5.3.1安装教程
PHP 编程安全性小结
php正则判断中文字符
获取远程文件大小的php函数
PHP has encountered an Access Violation 错误的解决方法
PHP教程:COOKIE与SESSION联合实现跨域
PHP代码实例:图片转成HTML
PHP教程:PHP不能读取MS SQL数据表
Web开发帮助:学习http headers的方方面
cURL库的强大功能和灵活的扩展性
PHP教程:PHP的目录操作和文件操作
Fedora 12服务器上安装Apache2+PHP+MySQL
PHP开发网站常用的21种功能的代码汇总
php的curl获取有301/302跳转文件出错问题解决
难道研究PHP的人都是傻瓜吗?
WEB开发非常有用的9个PHP类库
PHP代码实例:常用的PHP分页类
PHP教程:foreach使用引用注意的问题

PHP学习宝典-第七章


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 43 ::
收藏到网摘: n/a

控制结构

本章重点

◆ 建立和组合逻辑测试

◆ 使用if和switch进行分支处理

◆ 使用while和for

◆ 使用exit和die退出页面的执行

如果不能让程序可因不同的情况来决定不同的执行,就很不容易编写出有用的程序。简单地说,输出显示变数的程序码行为取决于某个变数的值,做为一个程序设计师,我们可以透过不同的动作让程序对事件做出不同的回应(可依照外在世界、时间、使用者的输入或资料库的内容等等来配合)。

这种程序回应需要一种「控制结构(control structure)」,这个结构可控制指示在不同的情况下应该配合不同的程序码来执行。在上一章中,我们使用了if这样的控制结构,但没有真正深入讲解它,在这一章中,我们会介绍PHP提供的每种控制结构,并详细研究它们的运作与操作方式。

针对有经验的C语言程序设计师:在PHP的所有功能里,「控制」这部份是与C语言风格上最相似的,C语言中原来使用的所有结构都可以在这里使用,而且运作的方式也相同。如果你是有经验的C语言程序师可以跳过前面直接阅读本章末尾的小节。

我们将讨论的两大控制结构类型是分支(branch)和回圈(loop)。分支是程式执行通路上的一个分叉口,取决于某种测诗,程式可选择向左进行或向右进行,以后的路可能不相同,也可能重新汇合在一起。回圈是某种分支类型之一,它有一条执行路径转回到分支的开始处,可重覆进行测试度可能重覆循环执行。

在有效利用控制结构之前,必须能够有效地建构测试条件。我们先从最简单的测试开始,先了解常数TRUE和FALSE,然后在更复杂的程式码中使用这些测试。

Boolean运算式

本章中介绍的每种控制结构都含有两个截然不同的部份:一个是测试部份(决定往哪能个方向进行),一个是由测试的程式码(为单独的分支或是回圈)测试是透过Boolean运算求值进行的,以「真」或「非真」的判断为运算式的结果。

Boolean常数

最简单的运算式类型就是个简单值(simple value),最简单的Boolean值就是TRUE和FALSE常数,反之亦然。例如,我们可以在if-else叙述的测试部份嵌入它们:




if (TRUE)


print(“This will always print
”);


else


print(“This will never print
”);


上面的范例与下面的确叙述的是相同的:


if(FALSE)


print(“This will never print
”);


else


print(“This will always print
”);



逻辑运算子

逻辑运算子可以组合其它逻辑(又称Boolean)值来产生新的Boolean值。PHP支援标准的逻辑运算(and、or、not和xor)前两个还有可替代的版本,如表7-1所示。

7-1 逻辑性运算符号

 
对于C语言程式设计师来说,一定很熟悉「&&」和「||」运算子。「!」运算子通常称为「NOT」,原因很明显。

下面的运算式是逻辑运算子的范例:

(($statement_1 && $statement_2)||

($statement_1 && ! $statement_2)||

(! $statement_1 && $statement_2)||

(! $statement_1 && ! $statement_2)||

这是一种「同义反复」,是指无论叙述的变数值是什么,结果都为真。两个变数的真正值有四种可能的组合,其中每个都由一个「&&」运算子表示。这四种中必然有一种为真,因为它们是用「||」运算子连结在一起的。整个运算式必然为真。
下面例子所使用的xor是更巧妙的「同义反复」示范:

(($statement_1 and $statement_2 and

$statement_3) xor

((! ( $statement_1 and $statement_2)) or

(! ( $statement_1 and $statement_3)) or

(! ( $statement_2 and $statement_3))))

这个运算式的含义是:「给定三个叙述语句,只能以生下面的这两种情况之一:若非氖的三个叙述都有为真,就会是有一对叙述不为真。」

逻辑运算子的优先顺序

与其它任何一种运算子相比,有些逻辑运算子的