PHP语法:goto 语句
16lz
2021-01-22
问题
当 PHP 在执行代码过程,在某一时刻我们希望它能跳转到某一特定位置继续执行代码,该怎么做呢?
回答
在 PHP 中,我们可以使用 goto 操作符来使 PHP 代码执行器跳转到程序中某一特定位置。goto 的使用有一定限制,如:无法跳出一个函数或类,无法从外部跳入到一个函数,无法跳入到任何循环或者 switch 结构中。但可以跳出循环或者 switch,通常的用法是用 goto 代替 switch 中嵌套多层的 break。
语法
goto 会使 PHP 直接跳转到指定标志位置。
goto 标志;代码块标志:代码块
示例
例 1 —— 尝试跳入循环
<?phpgoto loop;for($i=0; $i<3; $i++) { while($i++) { loop: }}echo "End";
运行结果:
Fatal error: 'goto' into loop or switch statement is disallowed in F:\index.php on line 3
从运行结果可以看出,goto 不能从外部直接跳入循环中。
例 2 —— 一个简单的跳转
<?phpgoto loop;echo '这是第一个句子。';loop:echo '这是第二个句子。';
运行结果:
这是第二个句子。
例 3 —— 跳出循环
<?phpfor($i=0; $i<10; $i++) { while($i++) { if($i==5) goto end; }}echo '此时 $i=10';end:echo '此时 $i=' . $i;
运行结果:
此时 $i=5
从例 3 运行结果可以看出,在我们需要从循环中跳出的时候,使用 goto 非常方便。
提示
虽然 goto 使用起来非常方便,但是随意使用 goto 语句极易造成代码逻辑混乱,所以应当谨慎使用。
更多相关文章
- 使用PHP生成带有干扰线的验证码,干扰点、字符倾斜详细类代码
- 排序算法—归并排序【附代码】
- tideways+toolkit对php代码进行性能分析
- TCP 的连接建立与关闭状态及数据传输通信过程【含有 PHP socket
- php操作共享内存shmop类及简单使用测试(代码)
- 30 个 php 操作 redis 常用方法代码示例
- php中base64加密解密函数实例(附代码)
- php代码连不上mysql
- PHP_CodeSniffer安装和使用教程(自动代码检查规范工具)