phpプロパティgoto文
3432 ワード
goto文の使用
gotoの使用は議論されてきた[5.3バージョンの増加]支持者:gotoの使用は比較的柔軟で、プログラムの効率を高める場合がある.反対者:goto文はプログラムの静的構造と動的構造を一致させず、プログラムが理解しにくく、誤りを調べにくい.
goto文の一般的なシーン:
ループまたはswitch文からジャンプ
goto文使用制限{{gotoぶん:しようせいげん}}
同じファイルと役割ドメインでのみジャンプでき、1つの関数またはクラスメソッドからジャンプできません.また、別の関数にジャンプできません.また、任意のループまたはswitch構造にジャンプできません.
gotoが作成したループコード:
goto誤記
gotoの使用は議論されてきた[5.3バージョンの増加]支持者:gotoの使用は比較的柔軟で、プログラムの効率を高める場合がある.反対者:goto文はプログラムの静的構造と動的構造を一致させず、プログラムが理解しにくく、誤りを調べにくい.
goto文の一般的なシーン:
ループまたはswitch文からジャンプ
goto文使用制限{{gotoぶん:しようせいげん}}
同じファイルと役割ドメインでのみジャンプでき、1つの関数またはクラスメソッドからジャンプできません.また、別の関数にジャンプできません.また、任意のループまたはswitch構造にジャンプできません.
gotoが作成したループコード:
/** goto , 10 **/
$i = i;
st: // st, ,
echo " {$i}
";
if($i++ == 10){
goto end; // ,goto end,
}
goto st; // ,goto st
end: // st, ,
//do.... //
/*
$i < 10 , if, st , $i == 10 , end
*/
/** switch **/
$var = 2;
switch($var){
case 1:
goto one; // goto one
echo "is one"; //goto ,
case 2:
goto two;
echo "is two";
case 3:
goto three;
echo "is three";
}
one: // one
echo " one!";exit;
two: // two
echo " two!";exit;
three: // three
echo " three!";exit;
/*
: two!
*/
goto誤記
/** got **/
goto st; // 【 !】
for($i=0, $j=50; $i<100; $i++){
while($j--){
st: // st
}
}