php中的goto的用法实例(代码)

来源:转载 发布时间:2018-11-21 10:54:10 阅读量:643

本篇文章给大家带来的内容是关于php中的goto的用法实例(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

我们先举个简单示例:

1

2

3

4

<?php

goto LABEL; //这个标签自定义echo '乔峰';

 

LABEL:echo '鸠摩智';

以上例程会输出:鸠摩智

解释:
goto 操作符可以用来跳转到程序中的另一位置。该目标位置可以用目标名称加上冒号来标记,而跳转指令是 goto 之后接上目标位置的标记。

PHP 中的 goto 有一定限制,目标位置只能位于同一个文件和作用域,也就是说无法跳出一个函数或类方法,也无法跳入到另一个函数。

也无法跳入到任何循环或者 switch 结构中。可以跳出循环或者 switch,通常的用法是用 goto 代替多层的 break。

我们再看一个示例:

1

2

3

4

5

6

7

8

9

10

11

<?php

for($i=0, $j=10; $i<20; $i++) {

    while($j--) {

        if($j==6)

            goto end;

    }

}

echo"这里不会被输出";

end:

echo "i = $i\n";

echo 'stop here';

上面可以看到直接输出end后面的了,继续看:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

$number = 1;

switch($number){

    case 1:

        goto one;                 //使用goto跳到one标记处

        echo "第一名";            //goto已经跳转,这条语句不执行

    case 2:

        goto two;

        echo "第二名";

    case 3:

        goto three;

        echo "第三名";

}

 

one:

echo " 武林第一!";

//exit;

two:

echo " 武林第二!";

//exit;

three:

echo " 武林第三!";

//exit;

/*

  最终结果是:武林第一! 武林第二! 武林第三!

  注意后面的exit 注释了,为何不是最终输出 武林第一,大家可以琢磨下。

*/


标签: PHP
分享:
评论:
你还没有登录,请先