[关闭]
@Chiang 2020-01-13T16:50:06.000000Z 字数 505 阅读 606

goto

PHP-流程控制


goto 操作符可以用来跳转到程序中的另一位置。该目标位置可以用目标名称加上冒号来标记,而跳转指令是 goto 之后接上目标位置的标记。PHP 中的 goto 有一定限制,目标位置只能位于同一个文件和作用域,也就是说无法跳出一个函数或类方法,也无法跳入到另一个函数。也无法跳入到任何循环或者 switch 结构中。可以跳出循环或者 switch,通常的用法是用 goto 代替多层的 break。

  1. <?php
  2. goto a;
  3. echo 'Foo';
  4. a:
  5. echo 'Bar';
  6. ?>
  7. 以上例程会输出:
  8. Bar
  1. <?php
  2. for($i=0,$j=50; $i<100; $i++) {
  3. while($j--) {
  4. if($j==17) goto end;
  5. }
  6. }
  7. echo "i = $i";
  8. end:
  9. echo 'j hit 17';
  10. ?>
  11. 以上例程会输出:
  12. j hit 17
  1. <?php
  2. goto loop;
  3. for($i=0,$j=50; $i<100; $i++) {
  4. while($j--) {
  5. loop:
  6. }
  7. }
  8. echo "$i = $i";
  9. ?>
  10. 以上例程会输出:
  11. Fatal error: 'goto' into loop or switch statement is disallowed in
  12. script on line 2
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注