PHP顺序循环结构
1、if条件循环
1、 if(){ // doing something } 2、 if(){ // doing something }else{ // doing something } 3、 if(){ // doing something }else if(){ // doing something }else{ // doing something }
2、switch....case循环
<?php $num = rand(1,50);//获取1至50的随机数 $info = "";//提示信息 switch($num){ case 1: $info = "恭喜你!中了一等奖!"; break; case 2: $info = "恭喜你!中了二等奖!"; break; case 3: $info = "恭喜你!中了三等奖!"; break; case 4: $info = "很遗憾!你没有中奖!"; break; default: $info = "这是默认信息"; } echo $info; //输出是否中奖 ?>
break的作用是阻止代码进入下一个case 中继续执行。执行完当前的case就会跳出循环,
如果都没有break,就会从符合条件的case开始执行到最后,default也会执行,例子如下:
<?php //A例子 $num = 2; $sum = 10; switch($num){ case 1: $sum = $sum + 10; break; case 2: $sum = $sum + 10; break; case 3: $sum = $sum + 10; break; default: $sum = $sum + 10; } echo "A例子的值是:".$sum."<br />"; //B例子 $num = 2; $sum = 10; switch($num){ case 1: $sum = $sum + 10; case 2: $sum = $sum + 10; case 3: $sum = $sum + 10; default: $sum = $sum + 10; } echo "B例子的值是:".$sum."<br />"; ?>
3、while循环
先判断,后执行
while($sum<100) $num = rand(1,20);//随机数,模拟喂食小宠物的小面包 $sum = $sum + $num; //小宠物吃小面包 echo "我还没吃饱呢!"; echo "<br />"; }
先执行,后判断
<?php $i = 1 ; //从第1圈开始跑 do{ //跑10圈 echo "在跑第".$i."圈。"."<br />"; $i++; }while($i<=10); ?>
4、for循环
累加求和
$i = 1; $sum = 0; for($i = 1,$sum = 0;$i<=100;$i++){ $sum = $sum + $i; // 累加求和 } echo "for语句的运行结果:".$sum."<br />" ;
5、foreach循环语句,在PHP中常用于遍历数组,一般两种方式,取下标和值,以及只取值
$students = array( '2010'=>'令狐冲', //keys => value '2011'=>'林平之', '2012'=>'曲洋', '2013'=>'任盈盈', '2014'=>'向问天',); //定义数组
只取值,不取下标
foreach($students as $value){ echo $value; }
取值和下标
foreach($student as $keys => $value){ echo $keys.":".$values."<br />"; }
foreach循环嵌套
<?php $students = array( '2010'=>array('令狐冲',"59"), '2011'=>array('林平之',"44"), '2012'=>array('曲洋',"89"), '2013'=>array('任盈盈',"92"), '2014'=>array('向问天',"93"), '2015'=>array('任我行',"87"), '2016'=>array('冲虚',"58"), '2017'=>array('方正',"74"), '2018'=>array('岳不群',"91"), '2019'=>array('宁中则',"90"), ); //10个学生的学号、姓名、分数,用数组存储 foreach($students as $key => $val) { //使用循环结构遍历数组,获取学号 echo $key; //输出学号 echo ":"; //循环输出姓名和分数 foreach($val as $v) { echo $v; } echo "<br />"; } ?>