PHP 制御ステートメント 1. IF ステートメント
IF ステートメントは、ほとんどの言語で重要な機能であり、条件に基づいてプログラムセグメントを実行します。 PHP の IF ステートメントは、C:
に似ています。式で説明したように、expr は真理値に評価されます。 expr が TRUE の場合、PHP は対応するステートメントを実行し、FALSE の場合は無視します。
$a が $b より大きい場合、次の例は「a が b より大きい」ことを示します:
多くの場合、条件に基づいて複数のステートメントを実行する必要があります。もちろん、すべてのステートメントに IF 判定を追加する必要はありません。代わりに、複数のステートメントを 1 つのステートメント グループにグループ化できます。
If ステートメントは他の IF ステートメント内にネストでき、プログラムのさまざまな部分を柔軟かつ条件付きで実行できます。
PHP 制御ステートメント 2. ELSE ステートメント
通常、特定の条件が満たされた場合に 1 つのステートメントを実行し、条件が満たされない場合に別のステートメントを実行する必要があります。これを行うには ELSE が使用されます。 ELSE は、IF ステートメントを拡張し、IF ステートメントの式が FALSE の場合に別のステートメントを実行します。例えば、以下のプログラムを実行すると、$aが$bより大きい場合は「aはbより大きい」と表示され、それ以外の場合は「a is
<ol class="dp-xml"> <li class="alt"><span><span>NOT bigger than b’: </span></span></li> <li> <span>if ($a</span><span class="tag">></span><span>$b) { </span> </li> <li class="alt"><span>print "a is bigger than b"; </span></li> <li><span>} </span></li> <li class="alt"><span>else { </span></li> <li><span>print "a is NOT bigger than b"; </span></li> <li class="alt"><span>} </span></li> </ol>
PHP制御文3. ELSEIF文
」と表示されます。ELSEIF は、名前が示すように、ELSE と組み合わせた IF で、ELSE と同様に、IF 式が FALSE の場合に他のステートメントを実行するように IF ステートメントを拡張します。ただし、ELSE とは異なり、ELSEIF 式も TRUE の場合にのみ他のステートメントが実行されます。
1 つの IF ステートメントで複数の ELSEIF ステートメントを使用できます。 ELSEIF 式が TRUE である最初のステートメントが実行されます。 PHP 3 では、「else if」(2 つの単語として記述) および「elseif」(1 つの単語として記述) を記述しても、同じ効果が得られます。書き方が少し違うだけで (C に詳しい人なら同じです)、結果はまったく同じです。
ELSEIF ステートメントは、IF 式とその前の ELSEIF 式が両方とも FALSE で、現在の ELSEIF 式が TRUE の場合にのみ実行されます。
以下は、ELSEIF と ELSE を含む入れ子の形式の IF ステートメントです:
<ol class="dp-xml"> <li class="alt"><span><span>if ($</span><span class="attribute">a</span><span>==5): </span></span></li> <li><span>print "a equals 5"; </span></li> <li class="alt"><span>print "..."; </span></li> <li> <span>elseif ($</span><span class="attribute">a</span><span>==6): </span> </li> <li class="alt"><span>print "a equals 6"; </span></li> <li><span>print "!!!"; </span></li> <li class="alt"><span>else: </span></li> <li><span>print "a is neither 5 nor 6"; </span></li> <li class="alt"><span>endif; </span></li> </ol>
PHP 制御ステートメント 4. WHILE ステートメント
WHILE ループは、PHP 3 の単純なループです。 C と同じように。 WHILE ステートメントの基本的な形式は次のとおりです。
WHILE(expr) ステートメント
WHILE ステートメントの意味は非常に単純です。これは、WHILE 式が TRUE である限り、ネストされたステートメントを繰り返し実行するように PHP に指示します。 WHILE 式の値は各ループの開始時にチェックされるため、ネストされたステートメント内でその値が変更された場合でも、この実行はループの終わりまで終了しません (PHP がネストされたステートメントを実行するたびにループと呼ばれます) )。 IF ステートメントと同様に、中かっこを使用してステートメントのグループを囲み、同じ WHILE ループ内で複数のステートメントを実行できます:
WHILE(expr):statement ... ENDWHILE;
次の例はまったく同じです。入力されたすべての数値 1 から 10:
/* example 1 */
<ol class="dp-xml"> <li class="alt"><span><span>$</span><span class="attribute">i</span><span>=</span><span class="attribute-value">1</span><span>; </span></span></li> <li><span>while ($i0); </span></li> </ol>
最初のループの後、真理値式がチェックされると、FALSE ($i が大きくない) と計算されるため、上記のループは 1 回だけ実行されます。 0 より大きい) ループ 実行が終了します。
PHP制御文 5. FORループ文
FORループはPHPで最も複雑なループです。 C と同じように。 FOR ループの構文は次のとおりです。
FOR (expr1; expr2; expr3) ステートメント
最初の式 (expr1) は、ループの先頭で無条件に評価 (実行) されます。
ループを通過するたびに、式 expr2 が評価されます。結果が TRUE の場合、ループとネストされたステートメントは引き続き実行されます。結果が FALSE の場合、ループ全体が終了します。
各ループの最後で、expr3 が評価 (実行) されます。各式は null になる可能性があります。 expr2 が空の場合、ループの数は可変です (PHP のデフォルトは C と同様に TRUE です)。 FOR 真理式の代わりに条件付き BREAK ステートメントでループを終了する場合を除き、これを行わないでください。
以下の例を考えてみましょう。これらはすべて 1 から 10 までの数字を表示します:
/* example 1 */
<ol class="dp-xml"> <li class="alt"><span><span> for ($</span><span class="attribute">i</span><span>=</span><span class="attribute-value">1</span><span>; $i10) { </span></span></li> <li><span>break; </span></li> <li class="alt"><span>} </span></li> <li><span>print $i; </span></li> <li class="alt"><span>} </span></li> <li><span>/* example 3 */ </span></li> <li class="alt"> <span>$</span><span class="attribute">i</span><span> = </span><span class="attribute-value">1</span><span>; </span> </li> <li><span>for (;;) { </span></li> <li class="alt"> <span>if ($i </span><span class="tag">></span><span>10) { </span> </li> <li><span>break; </span></li> <li class="alt"><span>} </span></li> <li><span>print $i; </span></li> <li class="alt"><span>$i++; </span></li> <li><span>} </span></li> </ol>
もちろん、最初の例が明らかに最良ですが、FOR ループで空の式を使用できる機会が数多くあることがわかります。
他の言語には、配列またはハッシュ テーブルを反復処理するための foreach ステートメントがあります。 PHP は、while ステートメントと list()、each() 関数を使用してこの機能を実現します。
PHP 制御ステートメント 6. SWITCH 選択ステートメント
SWITCH ステートメントは、同じ式に対する一連の IF ステートメントのようなものです。多くの場合、同じ変数 (または式) を多くの異なる値と比較し、異なる比較結果に基づいて異なるプログラム セグメントを実行する必要があります。これが SWITCH ステートメントの目的です。
次の 2 つの例は、同じことを異なる方法で実行しています。1 つは一連の IF ステートメントを使用し、もう 1 つは SWITCH ステートメントを使用しています。