付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
网络数据库技术应用
第七讲第六章PHP程序设计语言
6.4,6.5,6.6本讲学习目标了解PHP函数的功能、分类;了解PHP函数的语法规范;了解PHP正则表达式的功能和用法;能自己编写正则表达式更好。掌握结构化程序设计语言PHP的三种基本控制结构(顺序、分支、循环);了解PHP自定义函数的定义和调用;在小组首页增加显示小组所有成员姓名功能。本讲小组讨论话题利用分支语句,增加进入小组首页须登录功能。(只需输对密码即可,无需用户名)本讲要点PHP语言的函数PHP正则表达式PHP语言的控制语句PHP的自定义函数PHP语言的函数(1)函数是具有一定功能的程序模块。分系统内置函数和自定义函数两大类。三个常用内置函数:显示函数:print中断函数:die()或exit调用函数:include判断变量类型的函数:注意返回结果值。Is_numeric(),is_float(),is_string(),is_bool,is_array,isset(),empty()PHP语言的函数(2)字符操作函数:(注意返回结果!)求字符串个数:strlen(串)比较字符串大小:strcmp(串1,串2)结果为-1,0,1取子串:substr(串,起始,长度)求串2于串1出现次数:substr_count(串1,串2)求串2于串1出现位置:strpos(串1,串2)求串2于串1首现:strpos(串1,串2)去除串左右侧空格、换行、Tab符:trim(串)去除串右侧空格、换行、Tab符:rtrim(串)全变小写字母:strlower(串)全变大写字母:strtoupper(串)PHP语言的函数(3)日期操作函数PHP系统时间戳为自1970年1月1日0时0分0秒起至今的总秒值。获取目前时刻的时间戳:time()获取日期和时间:date(显示格式,[时间戳])测试日期是否存在:chechdate(月,日,年)PHP正则表达式由普通字符和元字符组成。元字符含义:匹配任何单个字符.匹配字符串结尾$匹配一行的开始^匹配0或多个正好在它之前的那个字符*转义符\匹配[]中的任何一个字符[]定义一个子模式()择一匹配|匹配1或多个+匹配指定数目的字符{i}或{i,j}执行搜索的函数:ereg(正则表达式,串)PHP语言的控制语句顺序结构语句分支(条件)结构语句单分支语句双分支语句多分支语句循环结构语句While语句For语句分支(条件)结构语句
语句S1yesnoeeS1S2yes
noif(e)S1;
elseS2;
if(表达式)s1;switch语句switch语句功能可以根据某一表达式的不同取值,直接进行多分支选择处理语句格式语句格式:
switch(表达式e){
case常量表达式a1:语句序列S1;
break;
case常量表达式a2:语句序列S2;
break;
…case常量表达式an:语句序列Sn;
break;
default:语句S;
}switch语句switch语句执行示意图表达式e?语句序列S1;
break;语句序列S2;
break;语句序列S3;
break;语句序列S;………a1defaulta3a2case循环的基本概念循环结构两种形式当型循环首先判断循环控制表达式是否为“真”若为“真”,则反复执行循环体若为“假”,则结束循环while语句、for语句直到型循环首先执行循环体,然后才判断循环控制表达式若为“假”,则反复执行循环体直到循环控制表达式为“真”时结束循环
do_while语句当型循环while语句语句格式说明表达式是控制循环的条件,它可以是任何类型的表达式循环体语句语法上定义为一条语句,若循环体含有多条语句,则必须用大括号把它们括起来,成为复合语句
while语句的特点先判断,后执行若表达式一开始就为“假”,则循环一次也不执行提示分号“;”的位置是在语句之后而不是表达式的后面while(条件表达式){语句S;}当型循环while语句执行过程当表达式的值为“真(非0值)”时,循环重复进行当其值为“假(0值)时,循环结束,程序跳转到循环后面的第一条语句开始执行执行循环体语句表达式?计算表达式初值退出循环体为真为假。
<?php
while($counter<=10){print$counter;$counter=$counter+1;}?>
当型循环while语句例1打印1-10之间的所有整数类型说明及赋初值:$sum1=0;s$um2=0;$n=0;开始输入数据$n$n为0?
$n>0?
$sum1增1
$sum2增1输入数据$n输出统计的结果结束为0不为0正数负数yesno当型循环while语句例2
输入一组整数,分别统计正整数和负整数的个数。(0作结束标志)当型循环提示循环体中必须存在使循环趋于结束的语句,以保证循环的正常结束否则,会出现“死循环”的现象多条语句做循环体时必须用{}括起来形成复合语句形式否则,只把其中第一条语句当作循环体语句执行循环体中语句顺序非常重要while(1)…是无限循环格式while语句的循环体可以为空例如
while(getchar()!=‘Q’)
{……}当型循环while语句例3:计算s=1+1/2+1/3+……+1/100。
<?php
$s=0;
$i=1;
while($i<=100)
{$s+=1.0/$i;/*如果$s为int,$s+=1/$i是否会有问题*/
$i++;
}
print$s;
}
?>运行程序,输出结果是:$s=5.187378
当型循环for语句是语言中最常用、最灵活、最基本的循环控制语句特别适合已知循环次数的情况语句格式说明e1(表达式1)通常为赋值表达式用来实现循环结构变量的初始值e2(表达式2)通常为关系表达式或逻辑表达式将循环控制变量与某一值进行比较,以决定是否退出循环(循环进行的条件)e3(表达式3)通常采用自增或自减表达式描述循环控制变量的变化for(e1;e2;e3)
{S;}当型循环for语句执行过程计算表达式e1的值(循环初值)计算表达式e2的值(循环中间比较值)执行循环体语句S;e2的值为真?YN计算表达式e3的值退出循环体语句,执行for的语句下一条语句。当型循环for语句例:打印1-10之间的所有整数
<?phpfor($counter=1;$counter<=10;$counter++)print$counter;?>当型循环for语句提示表达式1、表达式2和表达式3中可以包含算术表达式例如:假定$a=2、$b=10,语句for($j=$a;$j<=3*$a*$b;$j+=$b/$a)等价于语句for($j==2;$j<=60;$j+=5)表达式3可以是负值,进行递减操作,循环向下计数的如果表达式2开始就不成立,则不执行循环体,而是执行for结构之后的语句循环体中允许打印循环控制变量或改变循环控制变量控制变量用来控制循环,一般不在循环体中使用尽管可以在for循环中修改控制变量的值,但是可能导致另人费解的错误for循环结构可以用等价的while循环结构表示直到型循环do…while语句语句格式说明
do_while语句的表达式是任意表达式,是控制循环的条件do_while语句的特点先执行后判断循环体至少执行一次do_while语句实现的循环重复执行循环体,直到表达式为"假"才退出循环。do
{语句s;}
while(表达式);;不能省略直到型循环do…while语句执行过程首先执行循环体语句计算表达式的值当表达式值为“真”时,返回循环体开始处继续执行循环体语句当表达式的值为“假”,结束循环,执行下面的语句提示在do…while结构中,即使循环体为一条语句,也用花括号{}括了起来执行循环体语句表达式?计算表达式初值退出循环体为真为假直到型循环do…while语句例:打印1-10之间的所有整数直到型循环do…while语句例:统计在1~100之间的整数中,有多少个数是3的倍数或5的倍数
<?php$n=1do
{if($n%3==0||$n%5==0)
$i++;$n++;
}while($n<=100);
print“Thetotalnumberis:”.$i;
?>循环的本质循环是指在循环条件为真时反复执行执行的一组指令两种循环方式计数式循环控制变量用来计算循环的次数控制变量的值在每次执行完一组循环指令后递增当控制变量的值表明达到了预定的循环次数时循环终止并继续执行循环结构后的语句。标记式循环当事先不知道准确的循环次数循环体中包含每次循环都要获取数据的语句标记值是在所有合法的数据项都提供给程序后键入的值标记值必须不同于正常的数据项循环的本质循环语句的比较循环方式while语句和do_while语句多采用标记式循环用于循环次数不定的情况for语句更方便对于循环次数确定的情况循环结构for语句和while语句先判断循环控制条件,后执行循环体可能一次也不执行循环体do_while语句是先执行循环体,后进行循环控制条件的判断do_while语句至少执行一次循环体do_while语句更适合于第一次循环肯定执行的场合循环的本质循环语句的比较实现功能do_while和while语句只有一个表达式,用于控制循环是否进行for语句有三个表达式可以控制循环是否进行,并能为循环变量赋初值及不断修改循环变量的值for语句比while和do_while语句功能更强,更灵活语句形式初始值while、do…while循环时,循环变量的初始值操作应放在while和do…while语句之前完成for语句通常在表达式1中实现循环控制变量的初始化while和for表达式的括号后面没有“;”do…while表达式的括号后面有“;”循环的本质循环语句的选用原则循环次数是否确定循环次数已知,一般用for语句循环次数由循环体的执行情况来确定,一般采用while语句或do…while语句循环体是否一定执行循环体至少要执行一次时,采用do…while语句循环体可能一次也不执行,则选用while语句或for语句【例】:下列程序的运行结果是:
<?php$a=10,$b=5,$c=5,$d=5;$i=0,$j=0,$k=0;for(;$a>$b;++$b)$i++;while($a>++$c)$j++;do{$k++;}while($a>$d++);print$i;print$j;print$k;?>
i:a)0b)4c)5d)6j:a)0b)4c)5d)6k:a)0b)4c)5d)6循环的本质循环嵌套循环嵌套若一个循环结构的循环体中包含了另一循环语句,则构成了循环的嵌套,称为多重循环三种循环语句while、do…while、for可以互相嵌套,自由组合执行过程应先执行内层的循环体操作,然后是外层循环。内层循环被执行的次数应为:内层次数×外层次数对外层循环变量的每一个值,内层循环的循环变量从初值变化到终值对外层循环的每一次循环,内层循环要执行完整的循环语句提示各循环语句所描述的循环结构必须完整,相互之间绝对不允许交叉循环嵌套循环嵌套例:求1-1000之间的所有完数。所谓“完数”是指一个数恰好等于它的因子之和(除自身外)<?php
for($a=1;$a=1000;$a++){for($m=0,$j=1;$j<=$a/2;$j++){if(!($a%$j))$m=$m+$j;
if($m==$a)print$a;}}?>循环嵌套循环嵌套例:求出用数字0-9可以组成多少个没有重复的三位偶数<?php$n=0;
for($i=1;$i<=9;$i++){/*百位数的处理*/for($k=0;$k<=8;$k=$k+2){/*个位数的处理,$k=$k+2为偶数*/if($k!=$i){for($j=0;$j<=9;$j++){/*十位数的处理*/if($j!=$i&&$j!=$k)$n++;
print$n;}}}}?>循环的中断与继续break语句功能用于终止(某层)循环的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026四川成都市锦江区学府幼儿园招聘员额教师2人备考题库附参考答案详解(精练)
- 2026陕西西北工业大学网络空间安全学院信息系统与智能安全团队招聘1人备考题库带答案详解(突破训练)
- 2026洞头海霞青年营度假酒店招聘5人备考题库(浙江)带答案详解(黄金题型)
- 2026年甘肃省兰州大学动物医学与生物安全学院聘用制B岗招聘备考题库附参考答案详解(模拟题)
- 2026辽宁沈阳建筑大学招聘高层次人才44人备考题库(第一批)及答案详解(历年真题)
- 2026北京联合大学招聘45人备考题库及1套参考答案详解
- 2026广东警官学院招聘事业单位人员5人备考题库附答案详解(综合题)
- 2025-2030智慧水电管理市场发展趋势及发展前景与投资策略研究报告
- 2026江苏南京大学人工智能学院准聘长聘岗位(事业编制)招聘备考题库及答案详解【新】
- 2206江西鹰潭市邮政分公司现面向社会招聘合同用工备考题库含答案详解(新)
- 山西省吕梁市2025-2026学年高三第二次模拟调研测试生物+答案
- 2026山东青岛海上综合试验场有限公司招聘38人备考题库含完整答案详解(全优)
- 大型赛事活动安保服务方案投标文件(技术标)
- 施工工地员工考核管理制度(3篇)
- 医院耗材监督考核制度
- 2025特变电工校园招聘200人笔试历年常考点试题专练附带答案详解2套试卷
- 2026年山东潍坊市高三一模高考生物模拟试卷(含答案详解)
- 玉林介绍教学课件
- 中建塔式起重机拆卸专项施工方案
- 2026年东莞市厚街控股集团有限公司招聘14名工作人员备考题库含答案详解
- 《DLT 2976-2025柔性低压直流互联装置技术规范》专题研究报告
评论
0/150
提交评论