contiue 3 是说第3队的里面的某一个不要了,这一队伍的后面的还是要的
break 3是说第3队及第三队后面的都不要了, 第几队是从现在的循环往上数 本次为1进行累加
break
<?php
/*
* 在PHP中break语句不仅可以跳出当前循环,还可以指定跳出几层循环
* break $num; num为向外跳的层数 num不能大于最大循环层数
*/
// 第三重循环
while (true) {
// 第二重
for (; ;) {
// 第一重
for ($i = 0; $i <= 10; $i++) {
echo "$i ";
if ($i == 7) {
echo "i=7, 跳出1重循环";
break;
}
}
echo "\n";
// 第一重
for ($i = 0; $i <= 20; $i++) {
echo "$i ";
if ($i == 15) {
echo "i=15, 跳出3重循环 ";
break 3;
}
}
echo "绝对不会输出这里";
}
}
echo "我是第三重";
// D:\phpstudy\PHPTutorial\WWW\PHPCollection\PHP中断>php 1.break.php
// 0 1 2 3 4 5 6 7 i=7, 跳出1重循环
// 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 i=15, 跳出3重循环 我是第三重
continue
<?php
/*
* PHP中continue只能终止本次循环而进入到下一次循环中,
* continue $num 可以指定终止第几重的当前循环 num不能大于最大循环层数
*/
$arr = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
for ($i = 0; $i < 10; $i++) {
echo "\n";
echo $i." " ;
// if ($i % 2 == 0) {
// continue;
// }
for (; ;) {
for ($j = 0; $j < count($arr); $j++) {
if ($j == $i) {
continue 3; //终止第三层的当前循环
} else {
echo "\$arr[" . $j . "]:" . $arr[$j] . " ";
}
}
}
echo "这里也绝对不会输出";
}
// 0
// 1 $arr[0]:1
// 2 $arr[0]:1 $arr[1]:2
// 3 $arr[0]:1 $arr[1]:2 $arr[2]:3
// 4 $arr[0]:1 $arr[1]:2 $arr[2]:3 $arr[3]:4
// 5 $arr[0]:1 $arr[1]:2 $arr[2]:3 $arr[3]:4 $arr[4]:5
// 6 $arr[0]:1 $arr[1]:2 $arr[2]:3 $arr[3]:4 $arr[4]:5 $arr[5]:6
// 7 $arr[0]:1 $arr[1]:2 $arr[2]:3 $arr[3]:4 $arr[4]:5 $arr[5]:6 $arr[6]:7
// 8 $arr[0]:1 $arr[1]:2 $arr[2]:3 $arr[3]:4 $arr[4]:5 $arr[5]:6 $arr[6]:7 $arr[7]:8
// 9 $arr[0]:1 $arr[1]:2 $arr[2]:3 $arr[3]:4 $arr[4]:5 $arr[5]:6 $arr[6]:7 $arr[7]:8 $arr[8]:9