目次
条件分岐
PHPの条件分岐の構文「if」、「else」、「else if」について扱います。条件を指定するために「比較演算子」というものを使います。次の表にPHPで使える「比較演算子」を示します。
演算 | 演算子 | 機能 |
---|---|---|
等しい | == | AとBの値が等しいときTRUE |
等しい | === | AとBの値が等しく型も等しいときTRUE |
等しくない | != | AとBの値が等しくないときTRUE |
等しくない | !== | AとBの値または型が等しくないTRUE |
より大きい | > | AがBより大きいときTRUE |
以上 | >= | AがB以上のときTRUE |
より小さい | < | AがBより小さいときTRUE |
以下 | <= | AがB以下のときTRUE |
条件分岐のサンプルコード
各条件分岐の構文とサンプルコード、実行結果を示します。
if構文
ひとつの条件を満たす場合にのみ処理を実行する場合には「if構文」を使って、次のように書きます。
処理
}
式の結果が「TRUE」であれば{}の中の処理が実行されます。処理の流れを図示すると、次のようになります。

if構文のサンプルコードと実行結果を示します。次のコードでは、変数$aの値が「10」より大きいときに、{}内の処理が実行されます。今回の場合、変数$aには「15」を代入しているので、実行結果で「a > 10」と出力されています。if構文の処理が正しく実行されていることが分かります。
コード
1 2 3 4 5 6 7 8 | <?php $a = 15; if ($a > 10) { echo "a > 10\n"; } echo "a: "; var_dump($a); ?> |
実行結果
a > 10
a: int(15)
else構文
if構文が成立しなかったときの処理を指定したい場合には、「else構文」を使って次のように書きます。
式の条件に当てはまるときの処理
} else {
式の条件に当てはまらないときの処理
}
「if構文」の後ろに「else構文」をつけることで、条件に当てはまらないときにも処理をさせることができます。処理の流れを図示すると、次のようになります。

else構文のサンプルコードと実行結果を示します。このコードでは、変数$aの値が「10」より大きいときに「a > 10」と出力され、そうでないときには「a <= 10」と出力されます。今回の場合、変数$aには「5」を代入しているので、実行結果で「a <= 10」と出力されています。else構文の処理が正しく実行されていることが分かります。
コード
1 2 3 4 5 6 7 8 9 10 | <?php $a = 5; if ($a > 10) { echo "a > 10\n"; } else { echo "a <= 10\n"; } echo "a: "; var_dump($a); ?> |
実行結果
a <= 10
a: int(5)
else if構文
if構文の条件に当てはまらなかった際に、再度条件を指定したい場合には、「 else if構文」を使って次のように書きます。
式1の条件に当てはまるときの処理
} else if ( 式2 ) {
式1の条件には当てはまらないが、式2の条件に当てはまるときの処理
} else {
どの式の条件にも当てはまらないときの処理
}
式1の条件に当てはまるときはif構文の{}内の処理、式1の条件に当てはまらず式2の条件に当てはまるときはelse if構文の{}内の処理、どの式の条件にも当てはまらないときはelse構文の{}内の処理するが実行されます。処理の流れを図示すると、次のようになります。

else if構文のサンプルコードと実行結果を示します。このコードでは、変数$aの値が「10」より大きいときに「a > 10」と出力され、「10」より小さいときには「a < 10」、どちらの条件にも当てはまらないときには「a = 10」と出力されます。今回の場合、変数$aには「9」を代入しているので、実行結果で「a < 10」と出力されています。else if構文の処理が正しく実行されていることが分かります。
コード
1 2 3 4 5 6 7 8 9 10 11 12 | <?php $a = 9; if ($a > 10) { echo "a > 10\n"; } else if ($a < 10) { echo "a < 10\n"; } else { echo "a = 10\n"; } echo "a: "; var_dump($a); ?> |
実行結果
a < 10
a: int(9)
まとめ
今回はPHPの「条件分岐」について紹介しました!次回は「繰り返し処理」について扱います!!
コメントを残す