php 跳出foreach / for循环实现程序

现在在php跳出循环方法有几种,一种是使用goto另一种是使用php新特性goto命令哦,下面我来一下介绍介绍.

break是被用在上面所提的各种循环和switch语句中的.他的作用是跳出当前的语法结构,执行下面的语句.break语句可以带一个参数n,表示跳出循环的层数,如果要跳出多重循环的话,可以用n来表示跳出的层数,如果不带参数默认是跳出本重循环//php当前循环为1,循环由里到外依次递增,break默认为1,例如跳出第2层循环

实例代码如下:

  1. for ($i=0;$i<3;$i++){
  2. foreach (array(1,2,3) as $val){
  3. foreach (array(1,2,3) as $val){
  4. echo "1层循环

    ";

  5. break 2; //跳出第2层循环
  6. }
  7. echo "2层循环

    ";

  8. }
  9. echo "3层循环

    ";

  10. }
  11. //结果:
  12. //1层循环
  13. //3层循环
  14. //1层循环
  15. //3层循环
  16. //1层循环
  17. //3层循环

goto

goto实际上只是一个运算符,和其他语言一样,PHP中也不鼓励滥用goto,滥用goto会导致程序的可读性严重下降.goto的作用是将程序的执行从当前位置跳转到其他任意位置,goto本身并没有要结束的循环的作用,但其跳转位置的作用使得其可以作为跳出循环使用.但PHP5.3及以上版本停止了对goto的支持,所以应该尽量避免使用goto.下面的是一个使用了goto跳出循环的例子

实例代码如下:

  1. for($i = 1000;$i >= 1 ; $i– ){
  2. if( sqrt($i) <= 29){
  3. goto a;
  4. }
  5. echo “$i”;
  6. }
  7. a:
  8. echo” this is the end”;

例子中使用了goto来跳出循环,这个例子用来检测1000以内,那些数的平方根大于29