PHP の 1 行の if ステートメント

Shraddha Paghdar 2023年1月30日
  1. PHP の if ステートメント
  2. PHP の if...else ステートメント
  3. if...elseif...else PHP のステートメント
  4. PHP で 1 行の if ステートメントを提供する三項演算子
PHP の 1 行の if ステートメント

私たちプログラマーは、特定の条件に基づいて決定を下し、条件が満たされた場合にプログラムによって実行されるコードを記述しなければならないことがよくあります。if ステートメントは、すべてのプログラミング言語で使用できる意思決定ステートメントです。PHP での 1 行の if ステートメントとその代替について学習します。

PHP は、4つの異なるタイプの条件文をサポートしています。すべての条件ステートメントは、&&||などの条件内の論理演算子をサポートします。

PHP の if ステートメント

if ステートメントは実行の流れを決定します。条件が一致した場合にのみ、if ブロックのコードを実行します。プログラムはコードを順番に評価します。最初の条件が真の場合、シーケンス内の他のすべての条件は無視されます。これは、すべての条件文に当てはまります。

構文

    if(condition) {
        // Code to be executed
    }

<?php
    $grade = "A";
    if($grade = "A"){
        echo "Passed with Distinction";
    }
?>

出力:

Passed with Distinction

PHP の if...else ステートメント

条件が一致した場合、if ブロックのコードを実行します。それ以外の場合は、else ブロックのコードを実行します。if ステートメントの代わりに else ステートメントを選択すると、意思決定プロセスが強化されます。

構文

    if(condition){
        // Code to be executed if condition is matched and true
    } else {
        // Code to be executed if condition does not match and false
    }

<?php
    $mark = 30;
    if($mark >= 35){
        echo "Passed";
    } else {
        echo "Failed";
    }
?>

出力:

Failed

if...elseif...else PHP のステートメント

一致条件に基づいてコードを実行します。一致する条件がない場合、デフォルトのコードは else ブロック内に書き込まれて実行されます。これは、多くの if...else ステートメントを組み合わせたものです。プログラムは最初の一致条件を見つけようとし、一致条件を見つけるとすぐに、その中のコードを実行して if ループを中断します。else ステートメントが指定されていない場合、プログラムはデフォルトでコードを実行せず、最後の elseif に続くコードが実行されます。

構文

    if (test condition 1){
        // Code to be executed if test condition 1 is true
    } elseif (test condition 2){
        // Code to be executed if the test condition 2 is true and condition1 is false
    } else{
        // Code to be executed if both conditions are false
    }

<?php
    $mark = 45;
    if($mark >= 75){
        echo "Passed with Distinction";
    } else if ($mark > 35 && $mark < 75) {
        echo "Passed with first class";
    } else {
        echo "Failed";
    }
?>

出力:

Passed with first class

PHP で 1 行の if ステートメントを提供する三項演算子

これは、if...else ステートメントの簡略化された記述方法を提供するため、if...else の代替手段です。三項演算子を使用して記述されたコードを読み取ることが困難になる場合があります。それでも、コンパクトな if-else ステートメントを作成するための優れた方法を提供するため、開発者はこれを使用します。

構文

(Condition) ? trueStatement : falseStatement
  1. Condition ?:確認する条件
  2. trueStatement:条件が一致した場合の結果
  3. falseStatement:条件が一致しない場合の結果

三項演算子は、条件が true と評価された場合はコロンの左側の値を選択し、条件が false と評価された場合はコロンの右側の値を選択します。

この演算子がどのように機能するかを理解するために、次の例を確認してみましょう。

例:

  • if...else を使用する
<?php
$mark = 38;

if($mark > 35){
    echo 'Passed'; // Display Passed if mark is greater than or equal to 35
} else{
    echo 'Failed'; // Display Failed if mark is less than 35
}
?>
  • 三項演算子を使用する
<?php
$mark = 38;

echo ($mark > 35) ? 'Passed' : 'Failed'; 
?>

出力:

Passed

バイトコードレベルでは、これら両方のステートメントに違いはありません。コンパクトな if-else ステートメントを記述します。三項演算子は、コードの可読性を低下させるため、一部のコード標準では許可されていないことに注意してください。

Shraddha Paghdar avatar Shraddha Paghdar avatar

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

LinkedIn