学習目的: PHP のプロセス制御をマスターする
1. If..else ループには 3 つの構造があります
1 つ目は、単純な判断として if 条件のみを使用することです。 「何かが起こった場合の対処法」と解釈されます。構文は次のとおりです。
if (expr) { ステートメント }
ここで、 expr は判定条件であり、通常は論理演算記号を判定条件として使用します。ステートメントは、条件を満たすプログラムの実行部分です。プログラムが 1 行のみの場合は、中括弧 {} を省略できます。
例: この例では中括弧が省略されています。
if ($state==1)echo "Haha" ;
?>
ここで特に注意していただきたいのは、ASP プログラマーがよく行う、等しいかどうかの判断が = ではなく == であるということです。このエラー = は代入です。
例: この例の実行部分は 3 行あり、中括弧は省略できません。
if ($state==1) {
echo "haha;
echo "
" ;
}
?>
2 番目のタイプは、if に追加するものです。 else 付きの条件は、「何かが起こったらどうするか、それ以外の場合はどう解決するか」と解釈できます
構文は次のとおりです
if (expr) {statement1 } else {statement2 } 例: 上記の例。実行命令が 1 行だけなので、中括弧
if ($state==1) {
echo "haha" ;
echo " を追加する必要がなくなり、より完全な処理に変更されました。 < br>";
}
else{
echo "haha";
echo "
";
}
?>
3 番目のタイプは、再帰的な if..else ループです。通常は複数で使用されます 意思決定を行うとき、複数の if..else を組み合わせて処理します
下の例を直接見てください
if ( $a > $b ) {
echo "a はより大きいですb. " ;
} elseif ( $a == $b ) {
echo "a は b に等しい" ;
} else {
echo "a は b より小さい" ;
}
?>
上記の例では、2 つの変数 a と b を比較するために階層化された if..else ループのみが使用されています。この再帰的な if..else ループを実際に使用する場合は、ループの階層が多すぎると問題が発生しやすいため、慎重に使用してください。設計ロジックに誤りがある場合、または中括弧が欠落している場合など、プログラム内で不可解な問題が発生します。
2. 変更のない for ループの構文は次のとおりです。
for (expr1; expr2; expr3) { ステートメント }
expr1 は条件の初期値です。 expr2 は判定条件として使用されます。 expr3 はステートメントの実行後に実行される部分です。次のステップの条件を変更します。ステートメントは、条件を満たすプログラムの実行部分です。プログラムが 1 行しかない場合、次の例は for ループを使用して記述できます。
for ( $i = 1 ; $i <= 10 ; $i ++) {echo "これは ".$i." 番目のループです}
?> ;
3. switch ループは通常、複合条件判断を処理します。各サブ条件は case 命令の一部です。実際には、同様の if 命令を多数使用すると、スイッチ ループに合成できます。
構文は次のとおりです
switch (expr) { case expr1: statement1; case expr2: statement2; }
expr 条件は通常、変数名です。 case の後の exprN は通常、変数の値を表します。コロン以降が条件に合致した実行部分となります。ループを抜け出すには必ず Break を使用してください。
switch ( date ( "D" )) {
case "Mon" :
echo "今日の月曜日" ;break;
case "火曜日" :echo "今日の火曜日" ;
break; case "水" :
echo "今日の水曜日" ;
break;
case "木" :
echo "今日の木曜日" ;
break;
case "金曜日" :
echo "今日の金曜日" ;
break;
default :
echo "今日は休日です" ;
break;
}
?>
ここで注意する必要があるのは、break です。省略しないでください。省略しても問題ありません。
今日はここまでです。明日からデータベースの使用についてお話します。
引用アドレス: http://hi.baidu.com/xxt959/blog/item/ade08b1b71dba0f8af5133bb.html