网站首页 > 技术文章 正文
程序需要跳出循环,就需要使用break/continue语句
一、break
break 可以终止当前的循环,包括while,do..while,for,foreach,switch在内的所有控制语句。
break 不仅可以跳出当前的循环,还可以跳出几层的循环。格式为:break $num; 参数$num为要跳出的几层循环。
二、continue
continue 只能终止本次循环而进入下一次的循环中。continue 也可以指定跳出几重循环,语法规则和break 类似。
三、几个例子
1、break的使用,遇到5 跳出循环。
<?php
$val = 0;
while ($val<10){
if ($val==5){
echo "遇到5跳出循环 <br/>";
break;
}
echo $val." ";
$val+=1;
}
?>
输出结果:
0 1 2 3 4 遇到5跳出循环
2、多个循环嵌套,break 跳出循环体。
<?php
while (true){
for(;;){
for ($i=0;$i<=10;$i++){
echo $i." ";
if ($i==5){
echo "遇到5跳出循环。跳出一重循环<br/>";
break 1;
}
}
for ($j=0;$j<=20;$j++){
echo $j." ";
if ($j==15){
echo "遇到15跳出循环。跳出最外重的循环<br/>";
break 3;
}
}
}
echo "你看不到我的 <br/>";
}
echo "执行完毕<br/>";
?>
输出结果:
0 1 2 3 4 5 遇到5跳出循环。现在在一重循环里的第一个循环。跳出一重循环
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 遇到15跳出循环、现在在一重循环里的第二个循环。跳出最外重的循环
执行完毕
说明:While 里面的表达式就一个true,表示会一直执行。For 没有写任何表达式,也是会一直执行。这样的写法是不建议的,但这里是使用break 跳出循环了,就不会无休止地运行下去了。这个例子最里面的两个一重循环都有跳出,第一个是break 1,也就是当前的循环,第二个是break 3,就是跳出最外面的while。如果写个 break 2 也就知道是跳出while后面的for这个循环了。
3、continue的使用,遇到偶数继续执行
<?php
for ($i=0;$i<=10;$i++){
if($i % 2==0){
continue;
}
else{
echo $i." ";
}
}
?>
输出结果:
1 3 5 7 9
4、continue跳出的使用
<?php
for($ii=0;$ii<2;$ii++){
for ($i=0;$i<=5;$i++){
for ($j=0;$j<=5;$j++){
if($j==$i){
echo "<br/>";
continue 2;
}
else{
echo $j." ";
}
}
echo "这句话你看不到";
}
}
echo "执行完毕";
?>
输出结果:
0
0 1
0 1 2
0 1 2 3
0 1 2 3 4
0
0 1
0 1 2
0 1 2 3
0 1 2 3 4
执行完毕
5、杨辉三角
杨辉三角是每一行除第一个数和最后一个数为1,其他数为上一行同位置的数+上一行同位置的前一个数之和。那么可以理解为此为一个二维数组,通过两次循环输出。
<?php
$arr=array();
for($i=1;$i<=10;$i++){
for($j=1;$j<=$i;$j++){
if($j==1||$j==$i){
echo $arr[$i][$j]=1;
}
else{
echo $arr[$i][$j]=$arr[$i-1][$j-1]+$arr[$i-1][$j];
}
echo " ";
}
echo "<br/>";
}
?>
输出结果:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
明天我们来看看字符串的一些操作。
- 上一篇: 有朋友咨询有没有PHP基础测试题及答案,这不它来了
- 下一篇: PHP代码规范
猜你喜欢
- 2024-11-19 PHP七天系列之错误处理
- 2024-11-19 面试官问我 JS 中 foreach 能不能跳出循环
- 2024-11-19 PHP跳出循环的方法语句有哪些?(图文+视频教程)
- 2024-11-19 如何在 PHP 中使用 foreach 循环遍历数组?
- 2024-11-19 for 和 forEach #编程
- 2024-11-19 PHP代码规范
- 2024-11-19 有朋友咨询有没有PHP基础测试题及答案,这不它来了
- 最近发表
- 标签列表
-
- cmd/c (57)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)