企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
## *goto* (PHP 5 >= 5.3.0, PHP 7) *goto* 操作符可以用来跳转到程序中的另一位置。该目标位置可以用目标名称加上冒号来标记,而跳转指令是 *goto* 之后接上目标位置的标记。PHP 中的 *goto* 有一定限制,目标位置只能位于同一个文件和作用域,也就是说无法跳出一个函数或类方法,也无法跳入到另一个函数。也无法跳入到任何循环或者 switch 结构中。可以跳出循环或者 switch,通常的用法是用 *goto* 代替多层的 *break*。 **Example #1 *goto* 示例** ``` <?php goto a; echo 'Foo';   a: echo 'Bar'; ?> ``` 以上例程会输出: ~~~ Bar ~~~ **Example #2 *goto* 跳出循环示例** ``` <?php for($i=0,$j=50; $i<100; $i++) {   while($j--) {     if($j==17) goto end;    }   } echo "i = $i"; end: echo 'j hit 17'; ?> ``` 以上例程会输出: ~~~ j hit 17 ~~~ **Example #3 以下写法无效** ``` <?php goto loop; for($i=0,$j=50; $i<100; $i++) {   while($j--) {     loop:   } } echo "$i = $i"; ?> ``` 以上例程会输出: ~~~ Fatal error: 'goto' into loop or switch statement is disallowed in script on line 2 ~~~ > **Note**: > *goto* 操作符仅在 PHP 5.3及以上版本有效。 ![](http://php.net/manual/zh/images/0baa1b9fae6aec55bbb73037f3016001-xkcd-goto.png) 此漫画鸣谢 [» xkcd](http://xkcd.com/292)