PHPのif文の基本的な書き方

PHPのif文の基本的な書き方 PHP言語リファレンス
PHPのif文の基本的な書き方
zucksadnetwork

if文は、指定した条件が真(true)である場合にだけ、特定のコードを実行する構文です。PHPでif文を使いこなすには、以下の事柄を理解しておく必要があります。

if文の基本的な書き方

if文の基本的な書き方は、以下のとおりです。

PHP

if (条件) {
    // 条件が真の場合に実行する処理
}

条件には、bool型の真偽値や、値の大小、値の一致、関数の実行結果など、さまざまな条件を指定することができます。

例えば、以下のコードは、変数 $a の値が 10 より大きい場合に、メッセージを表示するコードです。

PHP

$a = 12;

if ($a > 10) {
    echo "10より大きいです。";
}

elseif文とelse文

if文の条件が真でない場合、elseif文やelse文を使用して、別の条件で分岐することができます。

PHP

    // 条件1が真の場合に実行する処理
} elseif (条件2) {
    // 条件1が偽で、条件2が真の場合に実行する処理
} else {
    // 条件1と条件2が偽の場合に実行する処理
}

 

例えば、以下のコードは、変数 $a の値が 10 より大きい場合、10 より小さい場合、それ以外の場合で、それぞれメッセージを表示するコードです。

PHP

$a = 12;

if ($a > 10) {
    echo "10より大きいです。";
} elseif ($a < 10) {
    echo "10より小さいです。";
} else {
    echo "10です。";
}

短縮構文

if文は、以下の短縮構文で記述することもできます。

PHP

$a = 12;

echo $a > 10 ? "10より大きいです。" : "10以下です。";

この短縮構文では、条件式の後に ? を置き、真の場合の処理を : の左側に、偽の場合の処理を : の右側に記述します。

演算子

if文で使用できる演算子は、以下のとおりです。

演算子 意味
== 等しい
!= 等しくない
< より小さい
<= 以下
> より大きい
>= 以上
&& 論理積(AND)
\ \
! 論理否定(NOT)

条件式の評価順序

if文の条件式は、以下の順序で評価されます。

  1. 論理積(&&、||)
  2. 比較演算子(==、!=、<、<=、>、>=)
  3. 論理否定(!)

条件式の注意点

if文の条件式で、変数や関数の結果を評価する場合は、必ず「===」または「!==`」演算子を使用して、型も一致するようにしてください。

例えば、以下のコードは、変数 $a の値が 10 より大きい場合に、メッセージを表示するコードです。

PHP

$a = "12";

if ($a > 10) {
    echo "10より大きいです。";
}

 

このコードでは、変数 $a の値は文字列型ですが、条件式では数値型と比較しています。そのため、このコードはエラーになります。

正しいコードは、以下のとおりです。

PHP

$a = "12";

if ($a === 12) {
    echo "10より大きいです。";
}

このコードでは、条件式で「===」演算子を使用して、変数 $a の値と 10 の型も一致するようにしています。そのため、このコードは正常に動作します。

条件式の種類

if文の条件式には、以下のようなものがあります。

  • 真偽値(true、false)
  • 比較演算子(==、!=、<、<=、>、>=)
  • 論理演算子(&&、||、!)
  • 関数の実行結果(関数の戻り値が bool型である場合)

以下に、それぞれの条件式の使用例を示します。

真偽値

PHP

$a = 12;

if (true) {
    echo "条件式は真です。";
}

比較演算子

PHP

$a = 12;

if ($a > 10) {
    echo "aは10より大きいです。";
}

論理演算子

PHP

$a = 12;
$b = 20;

if ($a > 10 && $b < 30) {
    echo "aは10より大きく、bは30より小さいです。";
}

関数の実行結果

PHP

function isEven($n) {
    return $n % 2 === 0;
}

$n = 12;

if (isEven($n)) {
    echo "nは偶数です。";
}

ネストされたif文のスクリプト

以下のスクリプトは、変数 $a の値が 10 より大きい場合、10 より小さい場合、それ以外の場合で、それぞれメッセージを表示するスクリプトです。

PHP

$a = 12;

if ($a > 10) {
    echo "10より大きいです。";
} else if ($a < 10) {
    echo "10より小さいです。";
} else {
    echo "10です。";
}

このスクリプトでは、if文とelseif文、else文を使用して、3つの条件分岐を実現しています。

まとめ

PHP言語リファレンスif制御構造
PHPプログラミング図鑑をフォローする
PHPプログラミング図鑑