HOWTO · PHP

PHP 条件ステートメント

この記事では、PHP で使用できるさまざまな条件ステートメントについて説明します。

このページの内容

この記事では、PHP で使用できるさまざまな条件ステートメントについて説明します。 条件に基づいて動作するように PHP に指示できます。

PHP で使用できる条件ステートメントのリストを次に示します。

  1. if ステートメント
  2. if...else
  3. if...elseif..else
  4. switch ステートメント

PHP の if ステートメント

設定された条件が true の場合、PHP は if ステートメント内のコード ブロックを実行します。

構文:

if(condition){
  //Code
}

例を見てみましょう。

<?php
$t=12;
if($t<50){
echo "$t is less than 50";
}
?>

出力:

12 is less than 50

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

if...else ステートメントを使用すると、設定された条件が true の場合にコード ブロックを実行し、条件が false の場合に別のコード ブロックを実行できます。

構文:

if(condition){
  //Code
}else{
  //Code
}

例:

if...else ステートメントを使用して、偶数と奇数をグループ化できます。

<?php
$t=12;
if($t%2==0){
echo "$t is even number";
}else{
echo "$t is odd number";
}
?>

出力:

12 is even number

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

コードを実行するときに、2つ以上の条件をチェックするために使用します。

構文:

if(condition 1){
//Run code if condition is True;
}elseif(condition 2){
//Run Code if condition 1 is False and condition 2 is True;
}else{
//Run code if all conditions are false;
}

実際の例を見てみましょう。

if...elseif..elseステートメントを使用して評価システムを作成できます。

<?php
    $m=69;
    if ($m<33){
        echo "fail";
    }
    else if ($m>=34 && $m<50) {
        echo "D grade";
    }
    else if ($m>=50 && $m<65) {
       echo "C grade";
    }
    else if ($m>=65 && $m<80) {
        echo "B grade";
    }
    else if ($m>=80 && $m<90) {
        echo "A grade";
    }
    else if ($m>=90 && $m<100) {
        echo "A+ grade";
    }
   else {
        echo "Invalid input";
    }
?>

出力:

B grade

PHP のネストされた if ステートメント

ネストされた if ステートメントには、別の if ブロック内に if ブロックがあります。 内側のステートメントを実行するには、外側のステートメントが true である必要があります。

構文:

if(condition){
  //code
  if(condition){
    //code
  }
}

実際の例を見てみましょう。

ネストされたステートメントを使用して、簡単な投票資格テストを作成できます。

例:

<?php
    $a= 23;
    $nationality = "Dutch";
    //applying conditions on nationality and age
    if ($nationality == "Dutch")
    {
        if ($a >= 18) {
            echo "Eligible to vote";
        }
        else {
            echo "Not eligible to vote";
        }
    }
?>

出力:

Eligible to vote

深く入れ子にすることは常に推奨されるとは限りません。 ロジックをたどるのが難しくなります。