Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP语法:goto 语句

PHP语法:goto 语句

藏色散人
藏色散人ke hadapan
2019-08-06 13:58:5810718semak imbas

问题

当 PHP 在执行代码过程,在某一时刻我们希望它能跳转到某一特定位置继续执行代码,该怎么做呢?

回答

在 PHP 中,我们可以使用 goto 操作符来使 PHP 代码执行器跳转到程序中某一特定位置。goto 的使用有一定限制,如:无法跳出一个函数或类,无法从外部跳入到一个函数,无法跳入到任何循环或者 switch 结构中。但可以跳出循环或者 switch,通常的用法是用 goto 代替 switch 中嵌套多层的 break。

语法

goto 会使 PHP 直接跳转到指定标志位置。

goto 标志;
代码块
标志:
代码块

示例

例 1 —— 尝试跳入循环

<?php
goto loop;
for($i=0; $i<3; $i++) {
    while($i++) {
        loop:
    }
}
echo "End";

运行结果:

Fatal error: &#39;goto&#39; into loop or switch statement is disallowed in F:\index.php on line 3

从运行结果可以看出,goto 不能从外部直接跳入循环中。

例 2 —— 一个简单的跳转

<?php
goto loop;
echo &#39;这是第一个句子。&#39;;
loop:
echo &#39;这是第二个句子。&#39;;

运行结果:

这是第二个句子。

例 3 —— 跳出循环

<?php
for($i=0; $i<10; $i++) {
    while($i++) {
        if($i==5) goto end;
    }
}
echo &#39;此时 $i=10&#39;;
end:
echo &#39;此时 $i=&#39; . $i;

运行结果:

此时 $i=5

从例 3 运行结果可以看出,在我们需要从循环中跳出的时候,使用 goto 非常方便。

提示

虽然 goto 使用起来非常方便,但是随意使用 goto 语句极易造成代码逻辑混乱,所以应当谨慎使用。

Atas ialah kandungan terperinci PHP语法:goto 语句. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:learnku.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam