この記事ではWordpress制作で必修なPHPの条件分岐の書き方をご紹介いたします。

この記事の監修者
三谷 将大
フリーランスエンジニア/WEBデザイナー/WEBマーケター
1997年 愛知出身。
業界5年以上。実務経験後に独立し、30社以上のホームページ制作やマーケティング支援を行っている。
条件分岐とは?
条件分岐とは、「もし~であれば~を実行」というように、特定の条件に応じて異なる処理を行うことを指します。
PHPでは、条件分岐を使うことで、プログラムの流れを制御し、より柔軟な動作を実現できます。
例)
if, for, foreach, switch, while, do-while
条件分岐の使い方
if文
条件分岐の中でもよく使うif文からご紹介します。
書き方は以下の通りです。
<?php
if (条件式) {
//条件式が真の時実行
}
?>
テストの点数を例として当てはめてみましょう。(.は文字の連結)
<?php
$score= 94;
if($score> 94){
echo "あなたは". $score. "点なので合格です。<br>";
}
//あなたは94点なので合格です。
if文では条件を満たしていれば、{}内の処理が実行されます。逆に、条件を満たしていなければ{}内の処理は実行されません。
条件式について
条件式には様々な形式がありますが、実務でよく使う条件式の比較演算子をご紹介します。
条件式 | 意味 | 具体例 |
---|---|---|
A == B | AとBが等しいとき | $name == “Yamada” ($nameがYamadaのとき) |
A != B | AとBが等しくないとき | $name != “Yamada” ($nameがYamadaではないとき) |
A < B | AよりBが大きいとき | $score < 10 |
A > B | AよりBが小さいとき | $score >10 |
A <= B | BがA以下のとき | $score <= 10 |
A >= B | BがA以上のとき | $score >= 10 |
<?php
$score = 10;
if ($score == 10) {
echo "点数は10点です。";
}
if ($score != 5) {
echo "点数は5点ではありません。";
}
?>
elseの使い方
else
文は、if
文の条件が満たされなかった場合に実行される処理を記述します。
<?php
$score = 10;
if ($score == 5) {
echo "点数は5点です。";
} else {
echo "点数は5点ではありません。";
}
?>
elseifの使い方
elseif文は、複数の条件を順に評価するために使います。
以下のようにelseifを使うことで、1つの条件が満たされなかった場合でも、別の条件が満たされていれば実行する処理を指定します。
<?php
$score = 10;
if ($score == 5) {
echo "点数は5点です。";
} elseif ($score == 10) {
echo "点数は10点です。";
} else {
echo "点数は5点でも10点でもありません。";
}
?>
if、else、elseif文の別の書き方
PHPでは、if
文、else
文、elseif
文を別の形式で記述することも可能です。以下は、三項演算子を使った例です。
//三項演算子
//if else文
//条件 ? 真 : 偽
$score = 96 ;
$result = $score> 90 ? "合格です。" : "不合格です。";
echo $result;
また、WordPress制作では以下のようにHTMLコードに埋め込んで使用することが多くあります。
<?php if (条件) : ?>
条件を満たすときに出力するHTML
<?php else : ?>
条件を満たしていないときに出力するHTML
<?php endif; ?>
Switch文
if文を書き換えでswitch文を書くことができます。
下記がswitch文の書き方です。
switch(変数){
case "" :
//実行内容
break;
case "" :
//実行内容
break;
case "" :
//実行内容
break;
default: //else
//実行
}
&&の使い方
&&
(AND演算子)は、複数の条件がすべて真である場合にのみ真となります。
<?php
$score1 = 10;
$score2 = 20;
if ($score1 == 10 && $score2 == 20) {
echo "点数1は10で、点数2は20です。";
}
?>
||の使い方
||
(OR演算子)は、複数の条件のうち、少なくとも1つが真である場合に真となります。
<?php
$score1 = 10;
$score2 = 15;
if ($score1 == 10 || $score2 == 20) {
echo "点数1は10か、点数2は20です。";
}
?>
!の使い方
!
(NOT演算子)は、条件が真でない場合に真となります。
<?php
$score= 10;
if (!($score== 5)) {
echo "点数は5ではありません。";
}
?>