continue
continue是用来在循环结构中,控制程序放弃本次循环continue语句之后的代码并转而进行下一次循环。
continue本身并不跳出循环结构,只是放弃一次循环。如果在非循环结构中(如if、switch中)适用continue,程序将会出错。
例:
for($i=1;$i<100;$i++){
if($i/3==0||$i%7==0){
continue;
}else{
echo $i;
}
}
上述代码的作用是输出100以内,既不能被7整除又不能被3整除的哪些自然数,循环中用if条件判断能被整除的数,然后进行continue语句,就直接进入下一个循环。
break
break用在各种循环和switch语句中,作用是跳出当前语法结构,执行下面的语句。
break可以带一个参数n,表示跳出循环的层数。
for($i=1;$i<=10;$i++){//循环1
for($j=1;$j<=10;$j++){//循环2
$m=$i*$i+$j*$j;
echo $m;
if($m>100){
break 2;
}
}
}
上述代码中,在$m>100时,break 2;即跳出两层循环,即跳出了循环1,如果不带参数,则仅跳出了一层循环,即跳出了循环2
goto
goto是一个运算符,作用是将程序的执行从当前位置跳转到其他任意位置。goto本身没有要结束循环的作用,但其跳转位置的作用使得其可以作为跳出循环使用。
滥用goto会导致程序的可读性严重下降,因此PHP5.3以后停止了对goto的支持,所以应该尽量避免使用goto。
for($i=1000;$i>=1;$i--){
if(sqrt($i)<=29){
goto a;
}
}
a:
echo 'this is the end';
上述代码使用了goto跳出循环,这个例子用来检测1000以内,哪些数的平方根大于29。
exit
exit是用来结束程序执行的,可以用在任何地方。
exit可以带一个参数,如果参数是字符串,PHP将会直接把字符串输出,如果是整数(0-254),则那个参数将会被作为结束状态使用,不会输出该数字。
exit(123);//不会有任何输出,123是整数,被做为结束状态,不输出到页面
exit('123');//输出123,此时exit函数中的参数是一个为123的字符串
die()和exit()都是终止脚本执行的函数,exit和die执行的是同一个函数,die()是exit()的别名
die也可以带一个参数,如果参数是字符串,PHP将会直接把字符串输出,如果是整数(0-254),则那个参数将会被作为结束状态使用,不会输出该数字。