3 種類があります: 1. if else ステートメント、構文 "if (条件) {code;}else if (条件) {code;}else{code;}"; 2. switch case ステートメント、構文" switch (式) {ケース値 1: ステートメント ブロック; ブレーク;...ケース値 n: ステートメント ブロック; ブレーク; デフォルト: ステートメント ブロック;}"; 3. 「式 1? 式 2: 式 3」ステートメント、1 つ他の 2 つの式のうち、式 1 の結果に基づいて選択され、実行されます。
このチュートリアルの動作環境: Windows 7 システム、PHP バージョン 8.1、DELL G3 コンピューター
php には 3 つの判定文があります:
if else ステートメント
switch case ステートメント
三項演算ステートメント
1. if else 文
if 文を実行すると、まず条件を判定してから、判定結果に基づく決定とそれに伴う動作。これは、if ステートメント、if...else ステートメント、if...else if...else ステートメントの 3 つのタイプに細分できます。
if ステートメント
if ステートメントは、最も単純なタイプのプロセス制御です。特定の条件が真であるかどうかのみを判断し、真の場合は特定のステートメント ブロックを実行します。構文形式は以下のとおりです。
if (判断条件) { 语句块; }
if...else文
if文は判定結果が真の場合のみ演算可能. 多くの場合、それだけでは不十分なので、if...else の形式のステートメントがあります。 if...else 文は、if 判定とは異なり、判定結果が真である場合の演算だけでなく、判定結果が真でない場合にも対応する演算を行うことができます。
else ステートメントは if ステートメントを拡張し、if ステートメント内の式の値が FALSE の場合に対応するステートメントを実行できます。もう 1 つ注意すべき点は、else ステートメントは if ステートメントの句であり、if ステートメントと一緒に使用する必要があり、単独で存在することはできないということです。
if...else文の構文形式は以下のとおりです。
if (判断条件) { 语句块 1; } else { 语句块 2; }
上記形式では、「判定条件」が真の場合「文ブロック1」を実行します。それ以外の場合は、「ステートメント ブロック 2」を実行します。 「ブロック 1」と「ブロック 2」の両方に複数のステートメントを含めることができます。 if ステートメントと同様に、「ステートメント ブロック 1」と「ステートメント ブロック 2」の両方にステートメントが 1 つしか含まれていない場合は、中括弧 { } を省略できます。
if...else if...else ステートメント
else if ステートメントは else ステートメントと同じであり、if ステートメントを拡張します。 else if ステートメントは、さまざまな式に基づいてどのステートメント ブロックを実行するかを決定します。
PHP では、2 つの else if キーワードを一緒に使用することもできます (elseif など)。 else if 文の構文形式は次のとおりです。
if (判断条件 1) { 语句块 1; } else if (判断条件 2) { 语句块 2; } else if (判断条件 3) { 语句块 3; } ...... else if (判断条件 n) { 语句块 n; } else{ 语句块 n+1; }
上記の else if 構文では、最初の「判定条件 1」が TRUE の場合は「文ブロック 1」が実行され、 2 番目 「判定条件 2」が TRUE の場合、ステートメント「ステートメント ブロック 2」が実行されます。以下同様です。式の条件がいずれも TRUE でない場合は、else 節内の「ステートメント ブロック n 1」ステートメントが実行されます。もちろん、最後の else ステートメントを省略することもできます。
else if ステートメント内で同時に TRUE になれる式は 1 つだけです。つまり、else if ステートメント内で実行できるステートメント ブロックは 1 つだけです。 TRUE と評価される式が複数ある場合は、最初の式に対応するステートメント ブロックのみが実行されます。
#例:
<?php header('content-type:text/html;charset=utf-8'); $score = 89; if ($score > 90) { echo '成绩的级别为:优!'; } else if ($score > 70) { echo '成绩的级别为:良!'; } else if ($score > 60) { echo '成绩的级别为:中!'; } else { echo '成绩的级别为:差!'; } ?>
##2、switch case ステートメント switch ステートメントは、if...else if...else ステートメントに似ています。分岐構造でもあります。if...else if...else ステートメントと比較すると、switch ステートメントは次のようになります。より簡潔かつ明確に。
switch ステートメントは、式と複数の case ラベルで構成され、case ラベルの後にコード ブロックが続き、case ラベルはこのコード ブロックの識別子として機能します。 switch ステートメントの構文形式は次のとおりです:
switch(表达式){ case 值 1: 语句块 1; break; case 值 2: 语句块 2; break; ... ... case 值 n: 语句块 n; break; default: 语句块 n+1; }
switch ステートメントは、式の値に従って、case 内の値と順番に比較されます。等しくない場合は、検索を続けます。 next case; それらが等しい場合、switch ステートメントが終了するか、break に遭遇するまで、対応するステートメントが実行されます。
一般的に、switch ステートメントには最終的にデフォルト値 (default) があり、前のケースで一致する条件が見つからない場合は、else ステートメントと同様に、default ステートメントが実行されます。
例: date() 関数を使用して、今週の英語略語を取得し、略語に基づいて今日の曜日を出力します
<?php header('content-type:text/html;charset=utf-8'); $week = date('D'); switch($week){ case 'Mon': echo '星期一'; break; case 'Tue': echo '星期二'; break; case 'Wed': echo '星期三'; break; case 'Thu': echo '星期四'; break; case 'Fri': echo '星期五'; break; case 'Sat': echo '星期六'; break; case 'Sun': echo '星期日'; break; } ?>
PHP にも C 言語と同様に三項演算子があり、簡単な条件判定関数を実現できます。は、最初の式に基づき、結果は他の 2 つの式のいずれかを選択し、それを実行します。三項演算子は、三項演算子または条件演算子とも呼ばれます。
三項演算子の機能は「if else」ステートメントと一致しており、1 行で記述できるため、コードが簡潔かつ効率的になります。 PHP プログラムで三項演算子を適切に使用すると、スクリプトをより簡潔かつ効率的に作成できます。三元运算符的语法格式如下:
(expr1)?(expr2):(expr3); //表达式1?表达式2:表达式3
如果条件“expr1”成立,则执行语句“expr2”,否则执行“expr3”。
示例:
<?php header('content-type:text/html;charset=utf-8'); $a = 10; $a % 2 == 0 ? print '$a 是偶数!' : print '$a 是奇数!'; ?>
推荐学习:《PHP视频教程》
以上がPHPにはいくつかの判定ステートメントがありますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。