こんにちは。
今回の記事では、PHPでよく使う条件分岐(if文)について学んでいきます。
if文を使うと、「ある条件が成り立つかどうか」で処理を分けることができるようになります。
たとえば、ログインしているユーザーにだけボタンを表示したり、点数に応じてメッセージを変えたりと、状況に応じた柔軟な動作ができるようになります。
はじめての方でもイメージしやすいように、図や実例を交えながらやさしく解説していきます。
if文の基本|条件に応じて処理を変える
PHPにおけるif
文の基本的な書き方はこちらです。
“`php
if (条件式) {
// 条件が true のときに実行される処理
}
条件式が「true(真)」のときだけ、{}
の中の処理が実行されます
false(偽)の場合は、スルーされて実行されません
セミコロン ;
は、各処理の行末にだけ記述します(if (...) {
の直後には不要)
$age = 20;
if ($age >= 18) {
echo “あなたは成人です。”;
}
🖥 実行結果:あなたは成人です。
比較演算子とは?|2つの値を比べるための記号
if
文で条件を判断するためには、比較演算子という記号を使って、値同士を比べる必要があります。
以下は、代表的な比較演算子の一覧です👇
📷 ここに図を挿入:「大小を比べる」「等しいか調べる」の一覧画像
演算子 | 意味 | 例(結果) |
---|---|---|
== | 等しい | 3 == 3 → true |
!= | 等しくない | 3 != 2 → true |
> | より大きい | 5 > 2 → true |
< | より小さい | 1 < 4 → true |
>= | 以上(含む) | 10 >= 10 → true |
<= | 以下(含む) | 8 <= 9 → true |
比較の結果は「true」か「false」になる
比較演算子を使った結果は、「true(真)」か「false(偽)」のどちらかになります。
これらは「真偽値(しんぎち)」と呼ばれる、文字列や数値とは別のデータの種類です。
“`php
if (true) {
echo “これは実行されます”;
}
if (false) {
echo “これは表示されません”;
}
このように、trueであればif文の中の処理が実行され、falseであればスキップされます。
else文で「それ以外の場合」も指定できる
if
文に else
を組み合わせると、条件が false だった場合の処理も書くことができます。
phpコピーする編集する$age = 16;
if ($age >= 18) {
echo "あなたは成人です。";
} else {
echo "あなたは未成年です。";
}
🖥 実行結果: あなたは未成年です。
$age >= 18
が false だったため、else
の中の処理が実行されました
elseifで分岐を増やすこともできる
複数の条件を順番にチェックしたいときは、elseif
を使います。
phpコピーする編集する$age = 29;
if ($age >= 60) {
echo "シニア世代です。";
} elseif ($age >= 30) {
echo "30歳以上です。";
} elseif ($age < 30) {
echo "30歳未満です。";
}
🖥 実行結果: 30歳未満です。
- 上から順番に条件が評価され、最初に true になったブロックだけが実行されます
- 条件に合致しても、以降の elseif ブロックはスキップされます
よくあるミス&注意点
❌ セミコロンの誤り
以下のように if
の後にセミコロンをつけてしまうと、意図しない挙動になります。
phpコピーする編集するif ($age >= 18); {
echo "この処理は常に実行されます"; // ← セミコロンで if が終了してしまっている
}
if
の条件と{}
が無関係になってしまうため注意!
✅ 安全に書くポイント
- 処理が1行でも
{}
を省略せずに書くクセをつけておくと、後々のミスを防げます
まとめ|if文は「条件で処理を分ける」基本の力
今回学んだ内容をまとめます。
if
を使うと、条件に応じて処理を分けることができる- 条件式の判定には比較演算子(
==
,>=
,<
など)を使う - 判定結果は
true
またはfalse
の「真偽値」になる else
を使うと、条件が成り立たなかった場合の処理も書けるelseif
を使えば、複数の条件で分岐が可能- セミコロンや中括弧
{}
の使い方には注意する
次回は、「論理演算子(&&・||)」を使って複数条件を組み合わせる方法について紹介します!
より実務的な「ログインしていて、かつ管理者だったら…」のような書き方ができるようになりますので、ぜひご覧ください。