if文(条件分岐)は、色々な場面で使用するので初めての方は、どうしても分かりにくいと思います、慣れてくると何となく意味合いが腹に落ちると思います、それでは学習していきましょう。
「if文」と「比較演算子」の使い方
if-else文
true(真):条件が一致していること。
false(偽):条件が一致していないこと。
<?php
if(条件式 A) {
処理①:条件式 A が「true」であれば、このブロックが実行される。
}
else {
処理②:条件式 A が「false」であれば、このブロックが実行される。
}
?>
上記の処理をフローチャート図で示すとこの様になります。
if-elseif-else文
<?php
if(条件式 A) {
処理①:条件式 A が「true」であれば、このブロックが実行される。
}
elseif(条件式 B) {
処理②:条件式 A が「false」で、条件式 B が「true」であれば、このブロックが実行される。
else {
処理③:条件式 B でも「false」であれば、このブロックが実行される。
}
?>
上記の処理をフローチャート図で示すとこの様になります。
if-elseif-else文の使用例
条件1:テスト点数
60点未満:不合格
60点以上 80点未満:合格
80点以上:優秀
条件2:遅刻回数
6回以上:不合格
<?php
//仮のテスト点数を定義しなくては始まらない。
$score = 50;
if($score < 60) {
echo '不合格';
} else if($score >= 60 && $score < 80) {
echo '合格';
} else {
echo '優秀';
}
?>
画面上で確認するには、サーバーを借りるか、MAMP(マンプ)等を自分のパソコン内にインストールして確認します、まだインストールしていない方は下の記事を活用してください。
以上が条件分岐の基本的な書き方になります。
比較演算子、==と===の違い
==の時と、===の時は、使い方が違います、それでは学習していきましょう。
どちらも値を比較する時に使う演算子になりますが、使い方を間違えると自分で思った動きとは違う挙動になりますので注意しましょう。
==の意味合い
<?php ?>は省略しています。
if(1 == '1') {
//数字の1と文字の'1'が等価かどうか確認します。
echo 'true';
}
===の意味合い
if(1 === '1') {
echo 'true';
} else {
echo 'false'
}
プログラミング時はどちらを使えばいいのか疑問が出てきますが、二つのイコールを使った場合、型の比較を行わないので、意図しない時に「true」となる可能性があるので、バグを生み出さないためにもなるべく三つのイコールを使うことを推奨します。
意図しない挙動の例
(0 == false) :画面では、ゼロとfalseの比較は「true」となります。
(0 ===false) :画面では、ゼロとfalseの比較は「false」となります。
まとめ
if文(条件分岐)は色々な場面で使用されます、日常生活でもそうですよね、朝起きた時点から条件分岐がありトイレに行くのか、顔を洗うのか、色々な選択肢に迫られます、しかし、人間の脳は瞬時にプログラムを作成し判断します、本当に人間の脳は素晴らしい、パソコンで作成するプログラムも人に役立つものを作成すれば、きっと世の中はもっと便利になると思います、頑張っていきましょう。