第3 章
PHP 流程控制语句 
程序由一条条语句组成,每条语句都被用来实现一个具体的任务。一般情况下,一段程
序代码是顺序执行的,即从头到尾按顺序逐行执行。顺序执行是程序最为基本、最为简单的
结构。但有时也需要在某种条件下有选择地执行指定的操作,或者重复地执行某一类程序, 
这就是所谓的程序流程的控制问题。流程控制语句包括条件控制语句、循环控制语句和跳
转语句。合理地使用这些控制结构可以使程序流程清晰、可读性强,从而提高工作效率。
3.1 PHP的3种控制结构
在编程的过程中,所有的操作都是在按照某种结构有条不紊地进行,学习PHP语
言,不仅要掌握其中的函数、数组、字符串等知识,更重要的是,通过这些知识形成一种属
于自己的编程思想和编程方法。要想形成属于自己的编程思想和方法,那么首先就要掌
握程序设计的结构,再配合以函数、数组、字符串等知识,逐步形成自己的编程方法。
程序设计的结构大致可以分为顺序结构、选择结构和循环结构等3种。在对这3种
结构的使用中,几乎很少有哪个程序是单独地使用某一种结构来完成某个操作,大多是其
中的2种或者3种结构结合使用。
3.1.1 顺序结构
顺序结构是最基本的结构方式,各流程依次按顺序执行。传统流程图的表示方式与
N-S结构化流程图的表示方式分别如图3-1和图3-2所示。执行顺序为:开始→语句
1→语句2→…→结束。
图3-1 顺序结构传统流程图 图3-2 N-S结构化流程图

72
PHP 
网站开发与设计

3.1.2 
选择结构
选择结构就是对给定条件进行判断,条件为真时执行一个分支,条件为假时执行另一
个分支。其传统流程图表示方式与N-S结构化流程图表示方式分别如图3-3和图3-4 
所示。


图3-
3 
条件成立与否都执行语句或语句块


图3-
4 
条件为否不执行语句或语句块

3.1.3 
循环结构
循环结构可以按照需要多次重复执行一行或者多行代码。循环结构分为两种:前测
试型循环和后测试型循环。

前测试型循环是先判断后执行,是当条件为真时反复执行语句或语句块,条件为假
时,跳出循环,继续执行循环后面的语句,流程图如图3-5所示。


图3-
5 
前测试型循环流程图


第3 章 PHP 流程控制语句 73 
后测试型循环是先执行后判断,即先执行语句或语句块,再进行条件判断,直到条件
为假时,跳出循环,继续执行循环后面的语句,否则一直执行语句或语句块,流程图如
图3-6所示。
图3-6 后测试型循环流程图
在PHP中,大多数情况下程序都是以这3种结构的组合形式出现。其中,顺序结构
很容易理解,就是直接输出程序运行结果,而选择和循环结构则需要一些特殊的控制语句
来实现,包括以下3种控制语句。
(1)条件控制语句:if、else、elseif和switch。
(2)循环控制语句:while、do…while、for和foreach。
(3)跳转控制语句:break、continue。
3.2 条件控制语句
所谓条件控制语句,就是对语句中不同条件的值进行判断,进而根据不同的条件执行
不同的语句。在条件控制语句中主要有两个语句:if条件控制语句和switch多分支
语句。
3.2.1 if 条件控制语句
if条件控制语句是所有流程控制语句中最简单、最常用的一个,根据获取的不同条件
判断执行不同的语句,应用范围十分广泛,无论程序大小几乎都会应用到该语句。其语法
如下: 
if (expr) 
statement ; //这是基本的表达式
if () {} //这是执行多条语句的表达式
if () {}else {} / /这是通过else 延伸了的表达式
if () {}elseif() {} else {} / /这 是加入了elseif,可同时判断多个条件的表达式
参数expr按照布尔求值。如果expr的值为true,将执行statement;如果值为
false,则忽略statement。if语句可以无限层地嵌套到其他if语句中去,实现更多条件

74 PHP 网站开发与设计
的执行。
【例3-1】 if语句的应用。 
<?php 
//使用rand()函数生成一个随机数 
$num =rand(1,10); 
if($num %2 ==0){ 
echo "\$num=$num <BR>"; 
echo "$num 是一个偶数。"; 
} 
?> 
运行结果为: 
$num=2 
2 是一个偶数。
提示:rand()函数用来生成一个随机数,格式为intrand(intmix intmax),该函数
返回一个mix到max之间的随机数。如果没有参数,则返回0到RAND MAX之间的随
机整数。
其中,else的功能是当if语句在参数expr的值为false时执行其他语句,即在执行的
语句不满足该条件时,执行else后大括号中的语句。
【例3-2】 if…else的应用。 
<?php 
//使用rand()函数生成一个随机数 
$num =rand(1,10); 
if($num %2 ==0){ 
echo "\$num=$num <BR>"; 
echo "$num 是一个偶数。"; 
} else { 
echo "\$num=$num <BR>"; 
echo "$num 是一个奇数。"; 
} 
?> 
运行结果为: 
$num=3 
3 是一个奇数。
在同时判断多个条件的时候,PHP提供了elseif语句来扩展需求。elseif语句放置在
if和else语句之间,满足多条件同时判断的需求。
if语句的流程如图3-7、图3-8和图3-9所示。

第3 章 PHP 流程控制语句 75 
图3-7 if语句流程图 图3-8 if…else语句流程控制图
图3-9 elseif语句的流程控制图
【例3-3】 从文本框输入一个百分制分数,单击“提交”按钮后,输出成绩等级:90分以
上记为“A”,80~89分记为“B”,70~79分记为“C”,60~69分记为“D”,60分以下记为“D”。 
<html > 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>百分制分数</title> 
</head> 
<body> 
<form id="form1" name="form1" method="post" action=""> 
<input type="text" name="score" id="score" /> 
<input type="submit" name="button" id="button" value="提交" /> 
</form> 
<?php 
if (isset($_POST["button"])){ 
$score=$_POST ["score"]; 
if ($score>=90) $grade='A'; 
elseif ($score>=80) $grade='B';

76 PHP 网站开发与设计 
elseif ($score>=70) $grade='C'; 
elseif ($score>=60) $grade='D'; 
else $grade='E'; 
echo "成绩等级为".$grade; 
} 
?> 
</body> 
</html> 
运行结果为: 
输入: 86 
显示: 成绩等级为B 
3.2.2 switch 多分支语句
switch语句和if条件控制语句类似,实现将同一个表达式与多个不同值比较,获取
相同值,并且执行相同值所对应的语句。其语法如下: 
<?php 
switch ( expr ){ //expr 条件为变量名称 
case expr1: //case 后的expr1 为变量的值 
statement1; //冒号后的是符合该条件时要执行的部分 
break ; //使用break 来跳出循环体 
case expr2 : 
statement2 ; 
break ; 
default: 
statementN; 
break; 
} 
?> 
参数说明如表3-1所示。
表3-1 switch语句的参数介绍
参 数说 明
expr 表达式的值,即switch语句的条件变量的名称
expr1 放置于case语句之后,是要与条件变量expr进行匹配的值中的一个
statement1 在参数expr1的值与条件变量expr的值相匹配时执行的代码
break 终止语句的执行,即当语句在执行过程中,遇到break就停止执行,跳出循环体
default case的一个特例,在任何其他case都不匹配的情况下与之匹配,并且是最后一条
case语句

第3 章 PHP 流程控制语句 77 
switch语句的流程控制如图3-10所示。
图3-10 switch语句的流程控制图
注意: 
(1)表达式的类型可以是数值型或者字符串型。
(2)多个不同的case可以执行同一个语句块。
【例3-4】 应用switch语句判断成绩的等级情况。 
<?php 
$cont=49; //以下代码实现了根据$cont 的值,判断成绩等级的功能 
switch($cont) { 
case $cont=?=100; //如果$cont 的值等于100,则输出“满分” 
echo"满分"; 
break; 
case $cont>=90; / /如果$cont 的值大于等于90,则输出“优秀” 
echo"优秀"; 
break; 
case $cont>=60; / /如果$cont 的值大于等于60,则输出“及格” 
echo"及格"; 
break; 
default: // 如果$cont 的值小于60,则输出“不及格” 
echo "不及格"; 
?> 
运行结果为: 
不及格。
注意:if和switch语句可以从使用的效率进行区别,也可以从实用性角度区分。如
果从使用的效率进行区分,在对同一个变量的不同值进行条件判断时,使用switch语句

78 PHP 网站开发与设计
的效率相对更高一些,尤其是判断的分支越多越明显。
如果从语句实用性的角度区分,那switch语句肯定不如if条件语句。if条件语句是
实用性最强和应用范围最广的语句。
在程序开发的过程中,if和switch 语句的使用应该根据实际情况而定,不要因为
switch语句的效率高就一味地使用,也不要因为if语句常用就不应用switch语句。要根
据实际情况,具体问题具体分析,使用最适合的条件语句。在一般情况下可以使用if条
件语句,但是在实现一些多条件的判断中,特别是在实现框架的功能时,就应该使用
switch语句。
3.3 循环控制语句
循环语句是在满足条件的情况下反复地执行某一个操作。在PHP中,提供了4种循
环控制语句,分别是while循环语句、do…while循环语句、for循环语句和foreach循环
语句。
3.3.1 while 循环语句
while循环语句是循环控制语句中最简单的一个,也是最常用的一个。while循环语
句先对表达式的值进行判断,当表达式的值为非0值时,执行while语句中的内嵌语句; 
当表达式的值为0值时,则不执行while语句中的内嵌语句。该语句的特点是:先判断表
达式,后执行语句。while循环控制语句的操作流程如图3-11所示。
图3-11 while循环控制语句的操作流程
其语法如下: 
while (expr){ 
statement; /*先判断条件,当条件满足时执行语句块,否则不向下执行*/ 
} 
只要while表达式expr的值为true,就重复执行嵌套中的statement语句;如果
while表达式的值一开始就是false,则循环语句一次也不执行。
【例3-5】 将10以内的偶数输出,若不是则不输出。 
<?php 
$num =1;

第3 章 PHP 流程控制语句 79 
$str ="10 以内的偶数为: "; 
while($num <=10){ 
if($num %2 =?=0){ 
$str .=$num." "; 
} 
$num++; 
} 
echo $str; 
?> 
运行结果为: 
10 以内的偶数为: 2 4 6 8 10 
3.3.2 do…while 循环语句
do…while语句也是循环控制语句中的一种,使用方式与while相似,也是通过判断
表达式的值来输出循环语句。其语法如下: 
do{ /*程序在未经判断之前先进行了一次循环,循环到while 部分才判断条件,即使条件
不满足,程序也会运行一次*/ 
statement; 
}while(expr); 
该语句的操作流程是:先执行一次指定的循环体语句,然后判断表达式的值,当表达
式的值为非0时,返回重新执行循环体语句,如此反复,直到表达式的值等于0为止,此时
循环结束。其特点是先执行循环体,然后判断循环条件是否成立。do…while循环语句
的操作流程如图3-12所示。
图3-12 do…while循环语句的操作流程
【例3-6】 通过do…while语句计算一个员工的工龄工资增加情况。 
<?php 
$a=1; //定义变量$a 的值为1

80 PHP 网站开发与设计 
$year=5; 
do{ 
$price=50*12*$a; 
echo "您第".$a."年的工龄工资为<b>".$price."</b>元<br>"; 
$a++; 
}while($a<=$year); 
?> 
运行结果为: 
您第1 年的工龄工资为600 元
您第2 年的工龄工资为1200 元
您第3 年的工龄工资为1800 元
您第4 年的工龄工资为2400 元
您第5 年的工龄工资为3000 元
如果使用do…while语句计算员工的工龄工资,当变量a的值等于6时,会得到一个
意想不到的结果。下面就来具体地操作一下,看看具体会得到一个什么样的结果。定义
变量a的值为6,重新执行示例,其代码如下: 
<?php 
$a=6; //当直接定义变量$a 的值为6 时,仍可以输出第6 年的工资 
$year=5; / /定 义初始变量$year=5 
do{ 
$price=50*12*$a; 
echo "您第".$a."年的工龄工资为<b>".$price."</b>元<br>"; 
$a++; 
}while($a<=$year); //当$year 等于5 时程序没有停止,继续计算第6 年工资,当$year 等
//于6 时,判断条件不符合,停止循环,但是第6 年的工资已经输出了
?> 
运行结果为: 
您第6 年的工龄工资为3600 元
注意:这就是while和do…while语句之间的区别。do…while语句是先执行后判
断,无论表达式的值是否为true,都将执行一次循环;而while语句则是先判断表达式的
值是否为true,如果为true则执行循环语句,否则将不执行循环语句。
do…while循环语句的条件表达式后边必须加上分号作为该语句的结束。
编写这个示例意在说明while语句与do…while语句在执行判断上的一个小小区
别,在实际的程序开发中不会出现上述的这种情况。
3.3.3 for 循环语句
for循环语句是PHP中最复杂的循环控制语句,拥有3个条件表达式。其语法如下:

第3 章 PHP 流程控制语句 81 
for (expr1; expr2; expr3){ 
statement 
} 
for循环语句的参数说明如表3-2所示。
表3-2 for循环语句的参数说明
参数说 明
expr1 必要参数。第1个条件表达式,在第一次循环开始时被执行,即初始值
expr2 必要参数。第2个条件表达式,在每次循环开始时被执行,决定循环是否继续,即循环
条件
expr3 必要参数。第3个条件表达式,在每次循环结束时被执行,即循环变量
statement 必要参数。满足条件后,循环执行的语句,即循环体 
其执行的过程是:首先执行expr1;然后执行expr2,并对expr2的值进行判断,如果
值为true,则执行for循环语句中指定的内嵌语句,如果值为false,则结束循环,跳出for 
循环语句;最后执行expr3(切记是在expr2的值为true时),返回expr2继续循环执行。
for循环语句的操作流程如图3-13所示。
图3-13 for循环语句的操作流程
【例3-7】 使用for循环来计算2~100中所有偶数之和。 
<?php 
$b=""; 
for($a=0;$a<=100;$a+=2){ //执行for 循环 
$b=$a+$b; //计算所有偶数之和 
} 
echo "结果为: <b>".$b."</b>"; 
?>

82 PHP 网站开发与设计
运行结果为: 
结果为: 2550 
注意:在编程时,有时会遇到使用for循环的特殊语法格式来实现无限循环。语法格
式为: 
for(;;){ 
… 
} 
对于这种无限循环可以通过break语句来跳出循环。例如: 
for(;;){ 
if(x <20) 
break; 
x++; 
} 
3.3.4 foreach 循环语句
foreach循环控制语句自PHP4开始被引入,主要用于处理数组,是遍历数组的一种
简单方法。如果将该语句用于处理其他的数据类型或者初始化的变量,将会产生错误。
该语句的语法有两种格式。
格式一: 
foreach (array_expression as $value){ 
statement 
} 
格式二: 
foreach (array_expression as $key =>$value){ 
statement 
} 
参数array_expression指定要遍历的数组,其中$value是数组的值,$key是数组的
键名;statement是满足条件时要循环执行的语句。
在格式一中,当遍历指定array_expression数组,每次循环时,将当前数组单元的值
赋给变量$value,并且将数组中的指针移动到下一个单元。
在格式二中的应用是相同的,只是在将当前单元的值赋给变量$value的同时,将当
前单元的键名也赋给了变量$key。
说明: 
当把foreach语句用于其他数据类型或者未初始化的变量时会产生错误。为了避免

第3 章 PHP 流程控制语句 83 
这个问题,最好使用is_array()函数先来判断变量是否为数组类型。如果是,再进行后面
操作。
【例3-8】 foreach输出数组元素值的应用。 
<?php 
$a =array(1,2,3,4,5,6); 
foreach($a as $b) 
echo $b; 
?> 
运行结果为: 
1 2 3 4 5 6 
3.4 跳转语句
跳转语句有两个:break语句和continue语句。跳转语句使用起来非常简单而且容
易掌握,主要原因是它们都被应用在指定的环境中,如for循环语句中。在程序运行中, 
也可以使用return语句和exit语句来终止程序的运行。本节将进行详细的介绍。
3.4.1 break 跳转语句
break关键字可以终止当前的循环,包括while、do…while、for、foreach和switch在
内的所有循环控制语句。
break语句不仅可以跳出当前的循环,还可以指定跳出哪几重循环。其格式为: 
break n; 
参数n指定要跳出的循环数量。break关键字的流程图如图3-14所示。
图3-14 break关键字的流程图

84 PHP 网站开发与设计
【例3-9】 计算半径1~10的圆面积,直到面积大于100时为止。 
<?php 
define(PI,3.14); 
for($r=1;$r<=10;$r++) 
{ 
$area =PI * $r * $r; 
if($area>100) 
break; 
echo "r=$r, area=$area"; 
echo "<br/>"; 
} 
?> 
运行结果为: 
r=1, area=3.14 
r=2, area=12.56 
r=3, area=28.26 
r=4, area=50.24 
r=5, area=78.5 
3.4.2 continue 跳转语句
程序执行break后,将跳出循环,并开始继续执行循环体的后续语句。continue跳转
语句的作用没有break那么强大,只能终止本次循环,而进入到下一次循环中。在执行
continue语句后,程序将结束本次循环的执行,并开始下一轮循环的执行操作。continue 
也可以指定跳出几重循环。continue跳转语句的流程图如图3-15所示。
图3-15 continue跳转语句的流程图
【例3-10】 使用for循环来计算1~100中所有奇数的和。在for循环中,当循环到
偶数时,使用continue实现跳转,然后继续执行下一轮循环的运算。

第3 章 PHP 流程控制语句 85 
<?php 
$sum=0; 
for($i=1;$i<=100;$i++){ 
if($i%2=?=0){ 
continue; 
} 
$sum=$sum +$i; 
} 
echo $sum; 
?> 
运行结果为: 
2500 
说明: 
break和continue语句都有实现跳转的功能,但两者是有区别的:continue语句只是
结束本次循环,并不是终止整个循环的执行,而break语句则是结束整个循环。
3.4.3 return 语句
在大部分编程语言中,return语句可以将函数的执行结果返回,PHP中的return的用法
也类似。return的作用是将函数的值返回给函数的调用者,如果在全局作用域内使用return 
关键字,那么将终止脚本的执行。return语句在函数中使用时,有以下两个作用。
(1)如果在函数中执行了return语句,它后面的语句将不会被执行,也就是将退出该
函数。
(2)return语句可以向函数调用者返回函数体中任意确定的值,也就是常说的函数
返回值。
【例3-11】 return语句应用示例。 
<?php 
function sum($a,$b){ 
return $a +$b; 
return $a * $b; 
} 
$temp =sum(3,5); 
echo $temp; 
?> 
在上述例子中,输出的结果为8,而后面的return$a*Sb语句将不会被执行,也就是
将函数的返回值给$temp,然后进行输出。
3.4.4 exit 语句
程序执行过程中,总会发生一些错误,例如被零除、打开一个不存在的文件或者数据

86 PHP 网站开发与设计
库连接失败等情况。当程序发生错误时,应用控制程序应立即终止执行剩余代码,PHP 
的exit语句(或者die语句)可以实现这个功能。exit语句终止整个PHP程序的执行,即
后续代码不会执行。
exit语句的语法格式为: 
void exit ( [string message]) 
exit语句的功能是,输出字符串信息message,然后终止PHP程序的运行。
注意:字符串信息message必须位于小括号内。
【例3-12】 exit语句的应用。 
<?php 
@($a =2/0) or exit("发生被零除错误!"); 
echo "exit 后面的语句将不会运行!"; 
?> 
运行结果为: 
发生被零除错误! 
之所以exit不是函数,而是一个语言结构,是因为上述例子可以修改为: 
<?php 
@($a =2/0) or exit; 
echo "exit 后面的语句将不会运行!"; 
?> 
PHP还提供了die语言结构来终止程序的运行,die可以看作是exit的别名。例如, 
上述例子可以修改为: 
<?php 
@($a =2/0) or die("发生被零除错误!"); 
echo "die 后面的语句将不会运行!"; 
?> 
3.5 PHP文件间包含
引用外部文件可以提高代码的重用性,这是PHP编程的重要技巧。PHP提供了4 
个非常简单却很有用的包含函数(include()、require()、include_once()、require_once()), 
它们允许重复使用任何类型的代码。使用任意一个语句均可将一个文件载入PHP脚本
中,从而提高代码的重用性,提高代码维护和更新效率。
3.5.1 include()函数
include()函数的语法格式如下:

第3 章 PHP 流程控制语句 87 
mixed include(string resource) 
include()函数的功能是,将一个资源文件resource载入到当前PHP程序中。字符
串参数resource是一个资源文件的文件名,该资源可以是本地Web服务器上的资源,如
图片、HTML 页面、PHP 页面等,也可以是互联网上的资源。若找不到资源文件
resource,返回false;若找到资源文件resource,且资源文件resource没有返回值时,返回
整数1,否则返回资源文件resource的返回值。
注意: 
(1)使用include()函数载入文件时,如果被载入的文件中包含PHP语句,这些语句
必须使用PHP开始和结束标记进行标识。
(2)resource资源是互联网上的某个资源时,需要把配置文件php.ini中的选项
allow_url_include设置为on(allow_url_include=on),否则不能引用互联网资源。
【例3-13】 程序文件位于同一个目录下的include语句的应用(即include.php和
main.php位于同一个目录下)。
程序文件一:include.php。 
<?php 
$color ='red'; 
$fruit ='apple'; 
echo "这是被引用的文件输出!<br/>"; 
?> 
程序文件二:main.php。 
<?php 
echo "A $color $fruit<br/>"; 
include "include.php"; 
echo "A $color $fruit<br/>"; 
?> 
运行程序文件二的结果: 
Notice: Undefined variable: color in C: \ xampp \ htdocs \ chap3 \ index. php on 
line 16 
Notice: Undefined variable: fruit in C: \ xampp \ htdocs \ chap3 \ index. php on 
line 16 
A
这是被引用的文件输出! 
A red apple 
3.5.2 include()函数和require()函数的区别
应用require()函数来调用文件,其应用方法与include()函数类似,但还存在一定的

88 PHP 网站开发与设计
区别,具体如下。
(1)在使用require()函数调用文件时,如果被引用文件发生错误或不能找到被引用
文件,引用文件将给出警告信息及致命错误信息,然后终止程序运行。而include()函数
在没有找到文件时则会输出警告信息,但不会终止脚本的处理。
(2)使用require()函数调用文件时,只要程序一执行,会立刻调用外部文件;而通过
include()函数调用外部文件,则只有程序执行到该函数时,才会调用外部文件。
【例3-14】 include()和require()函数的区别示例。 
<?php 
echo "<h2>include 包含不在的conn.php 文件的结果: </h2>"; 
include( "conn.php") ; 
echo "include 的内容"; 
?> 
<?php 
echo "<h2>require 包含不在的conn.php 文件的结果: </h2>"; 
require "conn.php" ; 
echo "require 的内容"; 
?> 
输出结果如图3-16所示。
图3-16 include()和require()函数的区别示例运行结果
从例3-14的结果可以看到,include包含不存在的文件时,是不会终止脚本运行的, 
而require会终止脚本运行。
3.5.3 include_once()函数
随着程序资源规模的扩大,同一程序多次使用include()或者require()函数的情况时
有发生,而多次引用同一个资源也变得不可避免,这可能导致文件的引用混乱问题。为了

第3 章 PHP 流程控制语句 89 
解决这类问题,PHP提供了include_once()函数和require_once()函数,以确保同一个资
源文件只能引用一次。
include_once()函数是include()函数的延伸,其作用与include()函数几乎是相同的, 
唯一的区别在于,include_once()函数会在导入文件前先检测该文件是否在该页面的其他
部分被导入过,如果是则不会重复导入该文件。例如,要导入的文件中存在一些自定义函
数,那么如果在同一个程序中重复导入这个文件,在第二次导入时便会发生错误,因为
PHP不允许相同名称的函数被重复声明。
include_once()函数的语法如下: 
void include_once (string filename); 
filename参数是指定的完整路径文件名。
include_once()函数的功能:将一个资源文件resource载入到当前PHP程序中。若
找不到资源文件resource,include_once()函数返回false;若找到资源文件resource,且该
资源文件是第一次载入,include_once()函数返回整数1;若找到资源文件resource,且该
资源文件已经载入,include_once语句返回true。
【例3-15】 应用include_once()函数引用并运行指定的外部文件top.php。 
<html> 
<head> 
<meta http - equiv =" Content - Type " content =" text/html; charset = 
gb2312"> 
<title>应用include_once()函数包含文件</title> 
</head> 
<body> 
<table width="779" border="0" cellpadding="0" cellspacing="0"> 
<tr> 
<td><?php include_once("top.php");?></td> 
</tr> 
</table> 
</body> 
</html> 
top.php文件代码如下: 
<html> 
<head> 
<title>被包含文件</title> 
</head> 
<body> 
<table width =" 779 " height =" 80 " border =" 0 " cellpadding =" 0 " 
cellspacing="0">

90 PHP 网站开发与设计 
<tr> 
<td bgcolor="#33CCFF">使用include_once 语句引用的文件</td> 
</tr> 
</table> 
</body> 
</html> 
注意include_once()函数和require_once()函数的区别:include_once()函数在脚本
执行期间调用外部文件发生错误时,产生一个警告,而require_once()函数则导致一个致
命的错误。
思考与练习
1.continue、break语句在循环中分别起到什么作用? 
2.描述一下include()函数和require()函数的区别。
3.举例说明while循环语句和do…while循环语句在应用上的不同点。
4.关于exit语句与die()函数的说法正确的是( )。
A.执行exit语句后会停止执行后面的脚本,而die()函数无法做到
B.执行die()函数后会停止执行后面的脚本,而exit语句无法做到
C.die()函数等价于exit语句
D.die()函数与exit语句有直接关系
5.以下代码在页面上输出数据的行数是( )。 
$attr =array(1,2,3,4); 
while(list($key,$value) =each($attr)) 
{ 
echo $key."=>".$value."<br>"; 
}w
hile(list($key,$value) =each($attr)) 
{ 
echo $key."=>".$value."<br>"; 
} 
A.4 B.6 C.8 D .12 
6.语句for($k=0;$k=1;$k++)和语句for($k=0;$k==1;$k++)执行
的次数分别是( )。
A.无限和0 B.0和无限 C.都是无限 D. 都 是0 
7.可以结束循环的语句是( )。
A.break B.if C.continue D .s witch 
8.不论循环条件判断的结果是否为true,( )循环至少执行一次。
A.for B.while C.do…while D . 以 上都可以