『PHP基礎講座④』では、条件分岐について解説していきます。
条件分岐とは
「AであればBを実行」のように、
特定の条件を満たすときのみに実行する処理のことを条件分岐処理と言います。
では、その条件分岐のPHPのコードを解説していきます。
条件分岐の使い方
基本的な書き方
条件分岐を使うときは以下のような構文を使います。
<?php
if(条件){
条件が満たされているときに実行される処理
}
?>
上記の構文の具体的な活用例は以下のとおりです。
<?php
// 外の天気を表す変数
$weather = "雨";
// 天気に応じて持ち物を決める
if ($weather == "雨") {
echo "傘を持っていきましょう";
}
?>
条件を満たしていれば、{}
内の処理が実行されます。
逆に、条件を満たしていなければ{}
内の処理は実行されません。
前述のコードでは、変数の$weather
が雨
という値で、
条件を満たすので「傘を持っていきましょう」と出力されます。
6パターンの条件式
条件式の表し方については以下のように6つのパターンがあります。
条件式 | 意味 | 具体例 |
---|---|---|
A < B | AよりBが大きいとき | $x < 10 |
A <= B | BがA以上のとき | $x <= 10 |
A > B | AよりBが小さいとき | $x > 15 |
A >= B | BがA以下のとき | $x >= 15 |
A == B | AとBが等しいとき | $name == “John” ($nameがJohnのとき) |
A != B | AとBが等しくないとき | $name != “John” ($nameがJohnではないとき) |
elseの使い方
以下のようにelse
を使うことで、条件が満たされなかった場合の処理を指定することができます。
<?php
if(条件){
条件が満たされて"いる"ときに実行される処理
} else {
条件が満たされて"ない"ときに実行される処理
}
?>
上記の構文の具体的な活用例は以下のとおりです。
<?php
// 外の天気を表す変数
$weather = "雨";
// 天気に応じて持ち物を決める
if ($weather == "雨") {
echo "傘を持っていきましょう";
} else {
echo "特に必要なものはありません";
}
?>
図で表すと以下のとおりになります。
elseifの使い方
以下のようにelseif
を使うことで、1つの条件が満たされなかった場合でも、別の条件が満たされていれば実行する処理を指定します。
<?php
if(条件①){
条件①が満たされて"いる"ときに実行される処理
} elseif(条件②) {
条件①は満たされて"ない"が、
条件②は満たされて"いる"ときに実行される処理
} else {
すべての条件が満たされて"ない"ときに実行される処理
}
?>
上記の構文の具体的な活用例は以下のとおりです。
<?php
// 外の天気を表す変数
$weather = "雨";
// 天気に応じて持ち物を決める
if ($weather == "雨") {
echo "傘を持っていきましょう。";
} elseif ($weather == "晴れ") {
echo "サングラスを持っていきましょう";
} else {
echo "特に必要なものはありません";
}
?>
図で表すと以下のとおりになります。
if、else、elseif文の別の書き方
if、else、elseifの文をHTMLのコードに埋め込むときは以下のような書き方をする場合があります。
<?php if (条件) : ?>
条件を満たすときに出力するHTML
<?php else : ?>
条件を満たしていないときに出力するHTML
<?php endif; ?>
{}
内に出力する内容は書きませんが、:
をそれぞれのPHPのコードの文末に書く形となります。
&&の使い方
条件式に&&
を使うと、以下のように2つ以上の条件をすべて満たすときのみに処理が実行されるようにできます。
<?php
if(条件① && 条件②){
条件①と条件②の両方が満たされて"いる"ときに実行される処理
}
?>
上記の構文の具体的な活用例は以下のとおりです。
<?php
$health = "良い";
$weather = "晴れ";
if ($health == "良い" && $weather == "晴れ") {
echo "外でジョギングをしよう";
} else {
echo "屋内で軽い運動をしよう";
}
?>
上記のコードは、$health
が良い
かつ$weather
が晴れ
であれば、「外でジョギングをしよう」と出力されますが、
そうでなければ、「屋内で軽い運動をしよう」と出力されます。
||の使い方
条件式に||
を使うと、以下のように2つ以上の条件のどれかを満たすときに処理が実行されるようにできます。
<?php
if(条件① || 条件②){
条件①か条件②のどちらかが満たされて"いる"ときに実行される処理
}
?>
上記の構文の具体的な活用例は以下のとおりです。
<?php
$userRole = "生徒";
if ($userRole == "生徒" || $userRole == "先生") {
echo "コース資料にアクセスできます";
} else {
echo "アクセス権限がありません";
}
?>
上記のコードは、$userRole
が生徒
もしくは先生
であれば、「コース資料にアクセスできます」と出力されますが、
どちらでもなければ、「アクセス権限がありません」と出力されます。
!の使い方
!
を使うと、以下のように条件式の条件を否定する形になります。
<?php
if(!(条件①)){
条件①が満たされて"ない"ときに実行される処理
}
?>
上記の構文の具体的な活用例は以下のとおりです。
$userRole = "ゲスト";
if (!($userRole == "管理者" || $userRole == "編集者")) {
echo 'アクセス権がありません';
}
上記のコードは、$userRole
が管理者
もしくは編集者
ではないと、「アクセス権がありません」と出力されます。