Products
GG网络技术分享 2025-03-18 16:17 0
goto 操作符可以用来跳转到程序中的另一位置。该目标位置可以用目标名称加上冒号来标记(例如 name: ),而跳转指令是 goto 之后接上目标位置的标记。
PHP 中goto 操作符的使用有一定限制:
goto 跳转的目标位置只能位于同一个文件和作用域内;
goto 无法跳出一个函数或类方法,也无法跳入到另一个函数;
goto 无法跳入到任何循环或者 switch 结构中;
goto 可以跳出循环或者 switch。
我们通常是使用 goto 代替 break 来跳出嵌套的多层循环,goto 本身并没有跳出循环的作用,但其跳转到指定位置的作用使得其可以代替 break 来跳出循环。
和其他语言一样,PHP 中并不鼓励滥用 goto,滥用 goto 会导致程序的可读性严重下降。
提示:goto 操作符仅在 PHP5.3 及以上版本有效。
注意:goto 不能从循环外跳入循环中,只能跳出。
原来 break 的使用方法:
$array = [1, 2, 3, 4, 5];
$list = [1, 2, 3, 4, 5];
foreach ($array as $num) {
$status = false;
// 要求直接跳出2个循环之外
foreach ($list as $i) {
if ($num == 3 && $i == 4) {
$status = true;
break;
}
}
if ($status == true) {
break;
}
}
echo \'end\';
改成 goto 的使用方法:
$array = [1, 2, 3, 4, 5];
$list = [1, 2, 3, 4, 5];
foreach ($array as $num) {
foreach ($list as $i) {
// 要求直接跳出2个循环之外
if ($num == 3 && $i == 4) {
goto end;
}
}
}
// 定义goto
end:
echo \'end\';Demand feedback