版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
内容PHP的三种控制结构条件控制语句循环控制语句跳转语句4123PHP文件间引用跳转5内容1PHP的三种控制结构1.1顺序结构1.2选择结构1.3循环结构1.1顺序结构顺序结构是最基本的结构方式,各流程依次按顺序执行。图3-1顺序结构传统流程图图3-2N-S结构化流程图1.2选择(分支)结构选择结构就是对给定条件进行判断,条件为真时执行一个分支,条件为假时执行另一个分支。图3-3条件成立与否都执行语句或语句块图3-4条件为否不执行语句或语句块1.3循环结构循环结构可以按照需要多次重复执行一行或者多行代码。循环结构分为两种:前测试型循环和后测试型循环。图3-5当型循环流程图前测试型循环,先判断后执行。1.3循环结构图3-6直到型循环流程图后测试型循环,先执行后判断。1.3循环结构其中的顺序结构很容易理解,就是直接输出程序运行结果,而选择和循环结构则需要一些特殊的控制语句来实现。包括以下3种控制语句。1.条件控制语句:if、else、elseif和switch。2.循环控制语句:while、do…while、for和foreach。3.跳转控制语句:break、continue和return。内容条件控制语句22.1if条件控制语句2.2switch多分支语句所谓条件控制语句就是对语句中不同条件的值进行判断,进而根据不同的条件执行不同的语句。在条件控制语句中主要有两个语句:if条件控制语句和switch多分支语句。2.1if条件控制语句
if条件控制语句是所有流程控制语句中最简单、最常用的一个,根据获取的不同条件判断执行不同的语句。if(expr)statement; //这是基本的表达式if(){} //这是执行多条语句的表达式if(){}else{} //这是通过else延伸了的表达式if(){}elseif(){}else{} //这是加入了elseif同时判断多个条件的表达式值为TRUE,将执行statement值为FALSE,则忽略statementif语句可以无限层地嵌套到其他if语句中去,实现更多条件的执行。2.1if条件控制语句图3-7if语句流程图图3-8if…else语句流程控制图2.1if条件控制语句图3-9elseif语句的流程控制图2.1if条件控制语句【例3-1】if…else的应用。<?php $islove=false; //为变量赋予一个逻辑值
if($islove==true){ //判断变量的逻辑值是否为真 echo"如果爱我,我们一起去爬山"; } else{ echo"我在家看电视"; }?>输出结果:我在家看电视在同时判断多个条件的时候,elseif的语句来扩展需求。elseif语句被放置在if和else语句之间,满足多条件同时判断的需求。2.2switch多分支语句switch语句和if条件控制语句类似,实现将同一个表达式与很多不同的值比较,获取相同的值,并且执行相同的值对应的语句。<?phpswitch(expr){ //expr条件为变量名称caseexpr1: //case后的expr1为变量的值statement1; //冒号":"后的是符合该条件时要执行的部分break; //应用break来跳离循环体caseexpr2:statement2;break;default:statementN;break;}?>2.2显示MySQL数据库中的数据图3-10switch语句流程控制图注:1.表达式的类型可以是数值型或者字符串型;2.多个不同的case可以执行同一个语句块;2.2switch多分支语句【例3-2】应用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“不及格”;?>运行结果为:不及格2.2switch多分支语句注:如果从使用的效率上进行区分,使用switch语句的效率相对更高一些,判断的分支越多越明显。如果从语句实用性的角度去区分,if条件语句是实用性最强和应用范围最广的语句。内容循环控制语句33.1while循环语句3.2dowhile循环语句3.3for循环语句3.4foreach循环语句循环语句是在满足条件的情况下反复地执行某一个操作。3.1while循环语句while循环语句,其作用是反复的执行某一项操作,最简单,最常用。该语句的特点:先判断表达式,后执行语句。while(expr){ statement;/*先判断条件,当条件满足时执行语句块否则不向下执行*/}图3-11while循环控制语句的操作流程值为FALSE,则忽略statement值为TRUE,则执行statement3.1while循环语句【例3-3】将10以内的偶数输出,若不是则不输出。<?php $num=1; $str="10以内的偶数为:"; while($num<=10){ if($num%2==0){ $str.=$num.""; } $num++; } echo$str;?>运行结果:10以内的偶数为:2468103.2dowhile循环语句dowhile循环语句,使用方式和while相似,也是通过判断表达式的值来输出循环语句。do{ /*程序在未经判断之前就进行了一次循环,循环到while部分才判断条件,即使条件不满足,程序也已经运行了一次*/statement; }while(expr);值为FALSE,则忽略statement值为TRUE,则执行statement3.2dowhile循环语句图3-12do…while循环语句的操作流程3.2dowhile循环语句【例3-4】通过do…while语句计算一个员工总的工龄工资增加情况。 <?php $a=1; //定义变量$a的值为1 $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元3.2dowhile循环语句定义变量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元3.2dowhile循环语句注:这就是while和do…while语句之间的区别。do…while语句是先执行后判断,无论表达式的值是否为TRUE,都将执行一次循环;而while语句则是首先判断表达式的值是否为TRUE,如果为TRUE则执行循环语句;否则将不执行循环语句。do…while循环语句后边必须加上分号作为该语句的结束。3.3for循环语句for循环语句是PHP中最复杂的循环控制语句,拥有3个条件表达式。for(expr1;expr2;expr3){statement}图3-13for循环语句的流程图第1个条件表达式,在第一次循环开始时被执行第2个条件表达式,在每次循环开始时被执行,决定循环是否继续第3个条件表达式,在每次循环结束时被执行3.3for循环语句【例3-5】使用for循环来计算2~100之间所有偶数之和。<?php $b=""; for($a=0;$a<=100;$a+=2){ //执行for循环 $b=$a+$b; //计算所有偶数之和 } echo"结果为:<b>".$b."</b>";?>运行结果:结果为:25503.3for循环语句注:在编程时,有时会遇到使用for循环的特殊语法格式来实现无限循环。语法格式为:for(;;){…}对于这种无限循环可以通过break语句跳出循环。例如:for(;;){ if(x<20) break; x++;}3.4foreach循环语句foreach循环控制语句主要用于处理数组,是遍历数组的一种简单方法。语法有两种格式:foreach(array_expressionas$value){statement}foreach(array_expressionas$key=>$value){statement}说明:当使用foreach语句用于其它数据类型或者未初始化的变量时会产生错误。为避免,最好使用is_array()函数先来判断变量是否为数组类型。若是,再进行操作。3.4foreach循环语句【例3-6】foreach输出数组元素值的应用。<?php$a=array(1,2,3,4,5,6);foreach($aas$b)echo$b;?>内容跳转语句44.1break语句4.2continue语句4.3exit语句
4跳转语句
continue语句和return语句使用起来非常简单且非常容易掌握,主要原因是它们都被应用在指定的环境中,如for循环语句中。Return语句在应用环境上较前两者相对单一,一般被用在自定义函数和面向对象的类中。4.1break语句break关键字可以终止当前的循环,包括while、do…while、for、foreach和switch在内的所有控制语句。break语句不仅可以跳出当前的循环,还可以指定跳出几重循环。格式为:breakn;//参数n指定要跳出的循环数量。图3-14break关键字的流程图4.1break语句【例3-7】计算半径1到10的圆面积,直到面积大于100时为止。<?phpdefine(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.14r=2,area=12.56r=3,area=28.26r=4,area=50.24r=5,area=78.54.2continue语句continue语句只能终止本次循环,并开始下一轮循环的执行操作。continue也可以指定跳出几重循环.图3-15continue跳转语句的流程图4.2continue语句【例3-8】使用for循环来计算1到100之间所有奇数的和。在for循环中,当循环到偶数时,使用continue实现跳转,然后继续执行奇数的运算。<?php$sum=0;for($i=1;$i<=100;$i++){ if($i%2==0){ continue; } $sum=$sum+$i;}echo$sum;?>运行结果为:25004.2continue语句说明:break和continue语句都是实现跳转的功能,但还是有区别的:continue语句只是结束本次循环,并不是终止整个循环的执行。break语句则是结束整个循环过程。4.3exit语句exit语言结构终止整个PHP程序的执行,即后续代码不会执行。exit语言结构的语法格式:voidexit([stringmessage])exit语言结构的功能:输出字符串信息message,然后终止PHP程序的运行。<?php@($a=2/0)orexit("发生被零除错误!");echo"exit后面的语句将不会运行!";?>运行结果:发生被零除错误!【例3-9】exit语言结构的应用。注:字符串信息message必须写在小括号里exit不是函数,而是一个语言结构die语言结构也可终止程序的运行,可看作是exit的别名内容5PHP文件间引用跳转5.1include()函数5.2include()和require()函数的区别5.3include_once()函数5PHP文件间引用跳转引用外部文件可以减少代码的重用性,是PHP编程的重要技巧。PHP提供了4个非常简单却很有用的包含函数。它们允许重新使用任何类型的代码。使用任意一个语句均可将一个文件载入PHP脚本中,从而减少代码的重用性,提高代码维护和更新的效率。5.1include()函数include函数的语法格式:mixedinclude(stringresource)include函数的功能:include语言结构将一个资源文件resource载入到当前PHP程序中。若找不到资源文件resource,返回FALSE;若找到资源文件resource,且资源文件resource没有返回值时,返回整数1,否则返回资源文件resource的返回值。5.1include()函数注:1.使用include()函数载入文件时,如果被载入的文件中包含PHP语句,这些语句必须使用PHP开始和结束标记标识。2.resouce资源是互联网上的某个资源时,需要将配置文件php.ini中的选项allow_url_include设置为on(allow_url_include=on),否则不能引用互联网资源。5.1include()函数【例3-10】程序文件位于同一个目录下的include语句的应用(即“include.php”和“main.php”位于同一个目录下)。程序文件一:include.php<?php$color='red';$fruit='apple';echo"这是被引用的文件输出!<br/>";
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 厕所升级改造项目2024协议示范文本
- 2024定制纪录片拍摄与后期制作协议
- 透过秦艽浅析我省野生药材资源的开发利用与保护
- 2024广东广州市地震监测中心第二次招聘编制外森林防灭火专业人员5人管理单位遴选500模拟题附带答案详解
- 网络沟通课件教学课件
- 企业入驻广告协议
- 二手发电机组买卖协议
- 互联网法律顾问合同范本
- 产学研合作审计服务协议
- 付款协议书加强信用体系建设
- 新生儿高频振荡通气课件
- 新生代员工特点分析
- 兰新线兰武段增建第二线某特长隧道施工组织设计
- 老旧小区改造临时用电专项方案
- 京东商城电子商务物流分析
- 我眼中的语言学
- 海南省天一大联考2022-2023学年物理高一第二学期期中经典试题含解析
- 豆腐供货协议书
- 新疆维吾尔自治区2021定额建筑及装饰工程计算规则
- 面试真题及答案销售类结构化面试题目
- 基本建设项目竣工财务决算审核表
评论
0/150
提交评论