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

PHP
php下载远程文件类--支持断点续传 (1)
方便实用的PHP生成静态页面类
PHP和Java强强联合 集成开发详解
实现Web 2.0 需借助开源技术力量
PHP实例:PHP上传自动生成缩略图及水印类
PHP技术:txtSQL安装手册中文版
利用PHP+JavaScript打造AJAX搜索窗
PHP利用cookie做的投票程序
PHP教程:用PHP程序对网页表单的处理
PHP应用:PHP在linxu下的安装与配置
PHP实例:PHP安全编程之加密功能
PHP技巧:关于cookie和session的分析
PHP入门:PHP网站开发中常见问题汇总
PHP教程:实现网站的无限分类
PHP技巧:用PHP控制您的浏览器cache
学习掌握动态网页PHP的编程语句
web开发中PHP+MySQL分页显示示例分析
PHP安装十大经典问题
BluePage通用分页类助开发者提高开发效率
实现强大的翻页跳转功能

PHP学习宝典-第七章


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 158 ::
收藏到网摘: 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))))

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

逻辑运算子的优先顺序

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