php goto問題
您好,goto操作符可以用來跳轉到程序中的某一指定位置。該目標位置可以用目標名稱 加上冒號來標記。PHP中的goto有一定限制,只能在同一個文件和作用域中跳轉, 也就是說你無法跳出一個函數或類方法,也無法跳入到另一個函數。你也無法跳入到任何循環或者switch 結構中。常見的用法是用來跳出循環或者switch,可以代替多層的break。
Example #1 goto 示例
echo 'Foo';
a:
echo 'Bar';
?>
PHP中為什么很少看到用goto
goto不是不讓用,是要慎用,類似于goto之類的語言特性,適當的使用是沒什么問題的。
但是如果濫用,你可以試想一下,在閱讀代碼的時候你不斷的跟隨goto語句在代碼中跳來跳去是什么一種狀態。
或許有人說:方法調用不也是需要調到方法聲明的位置去看么。實際上在規范化的編碼中,方法是對需要達到某種目的的一系列操作的一個封裝,并且通過規范的方法命名(或文檔)就應該知道這個方法是干什么的,這樣在閱讀程序的過程中遇到方法就知道做了什么操作,讀起來更加順暢。
之所以推薦不用goto語句是一種規范,而不是一種錯誤,就像python的核心原則之一“壞的行為應該被克制而不是被取締”
php 如何跳出if語句
php 跳出if語句的方法有兩種:
方法一、用goto語句修改代碼如下:
echo 111;
//如何在這跳出if語句,運行下面的代碼?
goto a;
echo 222;
}
a:
echo 333;
?>
注:goto語句是php5.3以上包括5.3版本有效,對php5.2無效。
方法二、代碼如下 :
while($a){
if ($b):
echo "ddd";
break;//這個return希望跳到if($c)這個if語句這里
endif;
break;
}
if($c){
if( $a && $b )
{
echo "ddd";
}
endif;
}
php if語句
php 跳出if語句的方法有兩種:方法一、用goto語句修改代碼如下: <?php if(1){ echo 111; //如何在這跳出if語句,運行下面的代碼看 goto a; echo 222; } a: echo 333; ?>注:goto語句是php5.3以上包括5.3版本有效,對php5.2無效。
方法二、代碼如下 : while($a){ if ($b): echo "ddd"; break;//這個return希望跳到if($c)這個if語句這里 endif; break; } if($c){ if( $a && $b ) { echo "ddd"; } endif; }。
PHP中為什么很少看到用goto
goto不是不讓用,是要慎用,類似于goto之類的語言特性,適當的使用是沒什么問題的。
但是如果濫用,你可以試想一下,在閱讀代碼的時候你不斷的跟隨goto語句在代碼中跳來跳去是什么一種狀態。 或許有人說:方法調用不也是需要調到方法聲明的位置去看么。
實際上在規范化的編碼中,方法是對需要達到某種目的的一系列操作的一個封裝,并且通過規范的方法命名(或文檔)就應該知道這個方法是干什么的,這樣在閱讀程序的過程中遇到方法就知道做了什么操作,讀起來更加順暢。 之所以推薦不用goto語句是一種規范,而不是一種錯誤,就像python的核心原則之一“壞的行為應該被克制而不是被取締”。