【八】php三大流程控制总结
2021-05-17 19:30
YPE html>
标签:游戏 tle script one 比赛 col lan view ***
1.顺序控制---不加控制的流程,默认按照顺序来执行你编写的代码
2.分支控制--有选择的来执行代码
- 单分支
- 语法:if(条件表达式){语句;}
- 快速入门
$age=150; if($age>18){ echo "你年龄大于18.要对自己的行为负责"; }
- 双分支
- 语法:if(条件表达式){语句;}else{语句;}
- 多分支(if else if else、switch)
- 语法:if(条件表达式){语句;}else{语句;}
- elif可以有多个,也可以没有
- else可以没有
- 语法:switch(表达式){case 变量1;n多语句;break;case 变量1;n多语句;break;defual:n多语句;break;}
- case语句部分有一到多
- defaul语句可以没有(根据自己代码业务逻辑)
- 通常在case语句后要带上break。表示退出switch语句
- 常量类型(int、float、string、boolean)
$mychar=‘a‘; //常量可以为布尔类型(true)/字符串(“a”) //当用布尔类型匹配时,会自动转换数据类型 switch ($mychar) { case ‘a‘: echo "今天星期一"; //输出"今天星期一" break; //注意:如果没有break,就会顺序执行,直到遇到下一个break case ‘b‘: echo "今天星期二"; break; case ‘c‘: echo "今天星期三"; break; default: echo "没有匹配的日期"; break; } //最终结论:首先按照case顺序进行匹配,如果一个都没匹配到则执行default,直到遇到break语句,退出switch echo "over"; //输出over
3.循环控制
- for循环
- 语法:for(循环初值;循环条件;步长){语句;}
php for ($i=1; $i $i++) { for ($m=1; $m $i ; $m++) { echo "*"; } echo "
"; } ?> /*结果: * ** *** **** ***** */
- while循环
- 语法:while(循环条件){//循环体}
$a=0; while ( $a) { echo "hello"."
"; //输出10句hello $a++; //对循环变量自增 }
- do...while循环控制
- 语法:do{循环体 }while(循环条件);
$i=0; do{ echo "hi"."
"; //输出5次hi $i++; }while ($i); //先执行在判断循环条件
ex1:打印整个金字塔
1 //打印整个金字塔 2 $n=3; 3 for ($i=1; $i $n; $i++) { 4 //在打印*之前 先打印空格 5 for ($j=1; $j$n-$i;$j++){ 6 echo " "; 7 } 8 //内层控制每层*的个数 9 for ($m=1; $m $i-1)*2+1 ; $m++) { 10 echo "*"; 11 } 12 13 echo "
"; 14 } 15 /*打印结果: 16 * 17 *** 18 ***** 19 */
ex2:打印空心金字塔
1 $n=8; 2 for ($i=1; $i $n ; $i++) { //判断层数 3 for ($m=0; $m $n-$i; $m++) { //金字塔前面的空格 4 echo " "; 5 } 6 for ($j=1; $j $i*2)-1 ; $j++) //每层的个数 7 { 8 //判断第一层和最后一层全部打印 9 if ($i==1||$i==$n) 10 { 11 echo "*"; 12 }else 13 { 14 //判断每层的第一个和最后一个打印*,其他输出空格 15 if ($j==1||$j==($i*2)-1) 16 { 17 echo "*"; 18 } 19 else 20 { 21 echo " "; 22 } 23 } 24 // echo "*"; 25 } 26 echo "
"; 27 } 28 ?> 29 /* 30 打印结果: 31 * 32 * * 33 * * 34 * * 35 * * 36 * * 37 * * 38 *************** 39 *
ex3:简易计算器
1 //ex2.php 2 3 !DOCTYPE html> 4 5 631 32 33 //result.php 34 php 35 //接受用户从ex2.php提交的数据 36 //1.接受num1 37 $num1=$_REQUEST["num1"]; 38 //2.接受num2 39 $num2=$_REQUEST["num2"]; 40 //3.接受运算符 41 $oper=$_REQUEST["oper"]; 42 $res=0; 43 switch ($oper) { 44 case ‘+‘: 45 $res=$num1+$num2; 46 echo "计算结果为:".$res; 47 break; 48 case ‘-‘: 49 $res=$num1-$num2; 50 echo "计算结果为:".$res; 51 break; 52 case ‘+‘: 53 case ‘*‘: 54 $res=$num1*$num2; 55 echo "计算结果为:".$res; 56 break; 57 case ‘/‘: 58 $res=$num1/$num2; 59 echo "计算结果为:".$res; 60 break; 61 default: 62 echo "你输入的运算符不对"; 63 break; 64 } 65 ?>jisuanqi 7 8 9
界面显示:
ex4:99乘法表
1 php 2 //判断层数 3 for ($i=1; $i $i++) { 4 //每层所显示的内容 5 for ($m=1; $m $m++) { 6 if($i>=$m){ 7 echo "$i*$m=".$m*$i." "; 8 } 9 } 10 echo "
"; 11 } 12 ?> 13 /* 14 1*1=1 15 2*1=2 2*2=4 16 3*1=3 3*2=6 3*3=9 17 4*1=4 4*2=8 4*3=12 4*4=16 18 5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 19 6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 20 7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 21 8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 22 9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 23 */
ex5.选择不同的图片代表不同的剪刀锤子布,与随机生成的数字做剪刀锤子布游戏
ex4.php代码如下:
1 2 3 433 345 6 19 20 21
result.php的代码如下:
1 php 2 //获取下拉框所选的值 3 $result=$_REQUEST["bs"]; 4 //产生随机数 5 $rd=rand(0,2); 6 switch ($result) { 7 case ‘b‘: 8 if ($rd=="0") { 9 echo "你出的是".$result.",我出的是布"."
"; 10 echo "平手" ; 11 }elseif($rd=="1") 12 { 13 echo "你出的是".$result.",我出的是锤子"."
"; 14 echo "你赢了"; 15 }else{ 16 echo "你出的是".$result.",我出的是剪刀"."
"; 17 echo "你输了"; 18 } 19 break; 20 case ‘jd‘: 21 if ($rd=="0") { 22 echo "你出的是".$result.",我出的是布"."
"; 23 echo "你赢了" ; 24 }elseif($rd=="1") 25 { 26 echo "你出的是".$result.",我出的是锤子"."
"; 27 echo "你输了"; 28 }else{ 29 echo "你出的是".$result.",我出的是剪刀"."
"; 30 echo "平手"; 31 } 32 break; 33 default: 34 if ($rd=="0") { 35 echo "你出的是".$result.",我出的是布"."
"; 36 echo "你输了" ; 37 }elseif($rd=="1") 38 { 39 echo "你出的是".$result.",我出的是锤子"."
"; 40 echo "平手"; 41 }else{ 42 echo "你出的是".$result.",我出的是剪刀"."
"; 43 echo "你赢了"; 44 } 45 break; 46 } 47 ?> 48 49 返回测试页面
结果:
4.循环相关语句----break语句
基本概念:结束当前的for、while、do while、swith流程,可以给一个数字,表示退出到第几层
入门案例:
for ($i=0; $i $i++) { echo "hello".$i."
"; //输出结果:从hllo0一直到hello10 if ($i==10) { break; } }
5.continue
基本概念:continue用于结束本次循环剩余代码,从新开始新的一次循环(如果条件为真,就继续执行),continue后面也可以跟数字,表示从第几层循环开始
1 for ($i=0; $i $i++) { 2 for ($j=0; $j $j++) { 3 if ($j==2) { 4 continue 2; 5 } 6 echo ‘$i=‘.$i."
"; 7 } 8 } 9 /* 10 $i=0 11 $i=0 12 $i=1 13 $i=1 14 hello 15 */
6.goto
基本概念:通过goto语句,我们可以跳转到指定的地方去执行
//注意:在for里面定义两个变量,注意用逗号隔开 for ($i=0,$j=50;$i $i++) { while ($j--) { //一直在while里面的循环,直到跳出该循环 if ($j==17) goto end; } } echo "$i=".$i; //该语句不会被执行 end: echo "j=17".$i."||".$j;
7.常量
基本概念:特殊的变量.
- 定义变量前面不需要定义$
- 常量一旦定义 ,则不能修改其值
- 常量在定义的时候,就需要给他赋初值
- 常量可以通过define或者const定义
- 常量的名称,一般说是全部大写,用下划线间隔
- 什么时候需要使用到这个常量呢?在程序中我们不希望某个值变化,则考虑使用常量(圆周率,税率)
// 第一种方法 define("TAX_TATE", 0.08); //不允许改变 echo TAX_TATE; //输出0.08 //第二种方法 const TAX_TATE2=0.1; echo TAX_TATE2; //输出0.1
【八】php三大流程控制总结
标签:游戏 tle script one 比赛 col lan view ***
原文地址:http://www.cnblogs.com/8013-cmf/p/7727145.html
下一篇:ACwing_789. 数的范围