看php100视频从零开始学php-php学习第四节[循环语句]

视频,ppt,示例文件下载地址:https://s.yunio.com/2Nlwqu [密码:sdtclass]


上一节我们就已经开始进入php的编程之路了,路都走了三天了,肯定是呀继续走的!我们前面分别说了基本语法,数据运算和条件语句,今天来讲讲循环语句!其实,教程不是完全和php100一样,我都是有扩展的讲解的!【PS:我其实很忙,不知道能不能坚持这样抽空每天更新,但是我尽量!看在这个份上,你们也帮忙分享下文章咯!】

OK,首先配合下视频,我们这一节有三个环节,一个是break,用来跳出的,一个是while循环,还有一个是for循环!其中,break不仅是跳出一层,可以加数字,跳出多层循环!while循环分别是do...while循环while循环!for循环我们还会讲到崁套循环和跳出N层!

先说break,break在使用的时候,是跳出一层循环,当我们有多层循环的时候,我们需要同时跳到最外面的循环怎么办呢?用“break n;" 这里的n代表数字,比如break 2 跳出两层循环!在后面举例给大家看!

while循环还有个do...while循环,这两个是有区别的,do...while循环就是先执行,后判断,而while循环是先判断,后执行,也就是说do...while循环不管下面是否为真,先执行一次,然后再做判断,这有点类似前面的递增递减运算的先输出后运算和先运算后输出!

for循环可以说是php编程中使用的最多的循环语句,而且for循环比较复杂,不是逻辑复杂,而是书写的时候稍微复杂(这是引用php100视频讲解人的话,其实我觉得也还可以吧,练习下知道逻辑就行了!)

我们先来看看do...while循环的格式和while循环的格式

  1. do{  
  2. ...  
  3. }  
  4. while(expr);  

这里先执行一次括号内的,然后再判断条件,这个expr就是条件,布尔值!

  1. while(expr){  
  2. ...  
  3. }  

这里先判断,后执行循环!

OK,前面这样说,估计很多人不理解,下面我举例说明!

  1. <?php    
  2.     
  3. do{    
  4. echo "循环", ++$a//$a的值是空,+1是1    
  5. }    
  6. while($a<5); //$a的值小于5,是真,循环    
  7. echo "<br>";    
  8.     
  9. do{    
  10. echo "循环", ++$b//$b的值是空,+1是1    
  11. }    
  12. while($b>5); //$b的值不可能大于5,是假    
  13. //前面已经执行过一次循环,这里是假不再循环    
  14. echo "<br>";    
  15.     
  16. while($c<5){ //先判断再循环,是真,循环    
  17. echo "循环", ++$c;    
  18. }    
  19. echo "<br>";    
  20.     
  21. while($d>5){ //先判断再循环,是假,不循环    
  22. echo "循环", ++$d;    
  23. }    
  24. echo "<br>";    
  25.     
  26. ?>    

好,我们来解析下上面的这些代码,首先,我们的值是0,因为前面我们没有定义$a的值,所以默认是0,然后++$a ,就是+1,得到1,下面这里有个$a < 5,这是真,所以循环

第二个语句中,$b 大于5,这个布尔值肯定是假,那么,跳出循环,又由于是do...while循环语句,执行了一次再判断,所以循环了一次!

第三个语句中,$c 小于 5,是真,循环!

第四个语句中,$d 大于 5,是假,那么,先判断再循环,所以这里不循环,也就是不输出!

OK,while循环和do...while循环其实是很简单的,大家多练习下就知道了!

php-08 php-08-demo

下面这里来举例说说for循环,for循环的格式如下:

  1. for($a=2;$a<8;$a++){  
  2. echo $a;  
  3. }  

这里先解读下这个格式,这里的for循环语句里面的条件分别是“无条件执行,比较运算(条件),循环条件”,然后下面是循环时候输出的内容,如果要崁套呢?

  1. for($a=2;$a<8;$a++){  
  2.  for($a=2;$a<8;$a++){  
  3.   echo "$a ";  
  4.  }  
  5. }  

上面这里,在for循环里面崁套循环,好,我们来看具体例子!

  1. <?php  
  2.   
  3. for($a=2;$a<8;$a++){  
  4. echo "循环$a ";  
  5. }  
  6. echo "<br>";  
  7.   
  8. for($a=2;$a<=8;$a++){  
  9. echo "循环$a ";  
  10. }  
  11. echo "<br>";  
  12.   
  13. for($a=1;$a>-6;$a--){  
  14. echo "循环$a ";  
  15. }  
  16. echo "<br>";  
  17.   
  18. for($a=1;$a<8;$a++){  
  19. for($i=2;$i<8;$i++){  
  20. echo "$i ";  
  21. }  
  22. }  
  23. echo "<br>";  
  24.   
  25. ?>  

我们先来看上面这几个语句,第一句中,$a 的值是2,$a  小于8,也就是2-7 这六个数,也就是六次,然后$a++,也就是循环一次 +1 所以跑一次后,第二次的$a 是3,第三次是4,以此类推第六次是7,所以echo出来的内容是循环2 ,循环3 到循环7 六个数据!

第二个语句类似,不过条件是$a 小于等于8,也就是等于8也执行,所以是七次,也就是循环2 -- 循环8

第三个语句是递减,$a 大于 -6 也就是从 1 到 0 到 -5 这样递减,echo出来的效果就是“循环1,循环0 -- 循环-5 ”

第四个语句是崁套循环,也就是循环里面有循环,当$a 小于8不在循环,从1开始,也就是1 - 7,是七次,然后循环语句里面也有个循环,我们先抛开外层循环不去想,也就是  $i 的值是2 ,当小于8的时候不循环,也就是2 - 7 ,然后这个循环外面的循环是七次,也就是七个 2 - 7 的循环,就是这样理解的!

那,break跳出语句呢?我们来看下面的例子:

  1. <?php  
  2.   
  3. for($a=2;$a<8;$a++){  
  4. if($a==6) break;  
  5. echo "循环$a ";  
  6. }  
  7. echo "<br>";  
  8.   
  9. for($a=1;$a<8;$a++){  
  10. for($i=2;$i<8;$i++){  
  11. if($a==6) break 2;  
  12. echo "$i ";  
  13. }  
  14. }  
  15. echo "<br>";  
  16.   
  17. for($a=1;$a<8;$a++){  
  18. for($i=2;$i<8;$i++){  
  19. if($i==6) break 2;  
  20. echo "$i ";  
  21. }  
  22. }  
  23. echo "<br>";  
  24.   
  25. ?>  

OK,我们来一个个的解析上面的例子:

首先第一个句子中,有个if判断语句,里面使用了一个 比较运算,我们前面学到过的,当$a的值等于6的时候,跳出循环,也就是执行到5这里,所以echo输出的是循环2 -- 循环5

第二个句子中:当$a的值是 6的 时候,跳出两层循环,首先,我们看内循环是 2 - 7,而外循环是 1 - 7,也就是有七次 “2 - 7” 这样的循环,而这里外循环中的 $a 的值是 6的时候跳出循环,所以这里循环了五次!

第三个句子中:内循环语句的$i的值是6的时候,直接跳出两层循环,所以这里只执行了一次外循环,echo的结果是“2 3 4 5 ”

OK,上面这里如果还是看不明白的去网盘下载 8.php 和 9.php 然后在本地修改里面的数字做测试,然后你就会懂了!

php-09 php-09-demo

您可以选择一种方式赞助本站

支付宝扫一扫赞助

微信钱包扫描赞助

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

图片 表情