1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#
break
跳出多层循环
$a
= 0;
while
(true) {
$a
++;
switch
(
$a
) {
case
1:
echo
'1'
;
break
;
case
2:
echo
'2'
;
break
;
default
:
echo
'in'
;
break
2;
}
}
echo
'out'
;
|
输出:1 2 in out
说明:
-
break除了可以在switch里面用,还可以从for、while等循环语句中跳出;
-
break+数字可以支持多重循环的跳出。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
#
continue
跳出多重循环
$i
= 0;
while
(
$i
++ < 5) {
echo
"Outer<br />\n"
;
while
(1) {
echo
"Middle<br />\n"
;
while
(1) {
echo
"Inner<br />\n"
;
continue
3;
}
echo
"This never gets output.<br />\n"
;
}
echo
"Neither does this.<br />\n"
;
}
|
输出:
Outer
Middle
Inner
Outer
Middle
Inner
……
输出5遍
说明:
-
continue可以跳出多重循环
-
continue语句作用到 switch 上的作用类似于 break
1
2
3
4
5
6
7
8
9
10
11
|
#
switch
语句
$i
= 0;
switch
(
$i
) {
case
0:
case
1:
case
2:
echo
"i的值为0或1或2"
;
break
;
default
:
echo
"i的值不为0或1或2"
;
}
|
输出:i的值为0或1或2
说明:
-
switch中在一个 case 中的语句可以为空,这样只不过将控制转移到了下一个 case 中的语句
1
2
3
4
5
6
7
8
9
10
11
12
|
declare
(ticks=1);
// A function called on each tick event
function
tick_handler()
{
echo
"tick_handler() called\n"
;
}
register_tick_function(
'tick_handler'
);
$a
= 1;
if
(
$a
> 0) {
$a
+= 2;
print
(
$a
);
}
|
输出:
tick_handler() called
tick_handler() called
tick_handler() called
3
tick_handler() called
tick_handler() called
tick_handler() called
说明:
declare(ticks)语法记录定义的语句个数,每执行一个定义语句由register_tick_function函数定义的函数执行一次(可以用来记数)
本文转自 Lee_吉 博客,原文链接: http://blog.51cto.com/12173069/1949349 如需转载请自行联系原作者