【作って納得!PHP入門】if – else文を使ってみよう(条件分岐)

PHP

PHPのif – else文を使ってみよう

前回は連想配列について記載しました。

今回はPHPのプログラムでif – else文を使ってみます。

最初にif文についての説明をします。
その後に、実際に簡単なプログラムを作成して、if文について学んでいきます。

この記事の目標(作るもの)について

if – else文を使用した簡単なプログラムを作成し、下記のように画面に結果を出力して確認します。

PHPのif文とは?

PHPのif – else文は条件分岐をするための構文です。

PHPでもif文で、「もし〜だったならxxx」といった処理を行うことができます。
条件判定したときにtrue(条件があっている)の場合に、処理の中を通っていきます。

if (条件文) {
  // .... 条件がtrue(あっていた)の場合に処理する
}

else文を使うと、「もし〜だったならxxx, そうでない場合はxxx」といった感じで、そうでない場合の処理を書くことができます。

if (条件文) {
  // .... 条件がtrue(あっていた)の場合に処理する
} else {
  // .... 条件がfalse(あっていない)の場合に処理する
}

else if文を書いた場合は「もし〜だったならxxx, そうじゃなくて〜だったらxxx」といった感じで、そうじゃない場合の条件判定を追加で書くことができます。

if (条件文1) {
  // .... 条件がtrue(あっていた)の場合に処理する
} else if (条件文2) {
  // .... 条件文1がfalseの場合(あっていない)に判定される
  // 条件文2にあっている場合は、ここが処理される
} else {
  // .... 全ての条件がfalse(あっていない)の場合に処理する
}

if文は、プログラムの中で好きなところで書くことができます。
else文は、if文の後に書くので、if文がないと使えません。「そうでない場合はxxxをする」という記述だからです。
else if文もif文の後でないと書くことができません、こちらもif文の条件の後に追加で加える構文だからです。

実際にコードを書いてみましょう。

PHPでif – else文を使ってみよう

実際にif文を使用して、処理を書いてみましょう。
前回作成したcodelike_web_dockerの配下に、if_fruits_and_lottey.phpという名前で下記の内容で保存します。

<?php

$fruits = "apple";
if ($fruits == "apple") {
    echo "りんごです。". "<br />";
}

if ($fruits == "grape") {
    echo "紫色です。". "<br />";
} else {
    echo "きれいな色です。". "<br />";
}

echo "<br />くじを引いてみます..."."<br />";
$random = mt_rand(0, 3);
if ($random == 0) {
    echo "大当たり〜". "<br />";
} else if ($random == 1) {
    echo "中当たり。". "<br />";
} else if ($random == 2) {
    echo "小当たり。。". "<br />";
} else {
    echo "ハズレ....". "<br />";
}

解説

コードの説明です。

if文

まず、$fruitsという変数に“apple”という文字列を入れています。
その後すぐにif文を使用しています。

if ($fruits == "apple") {
    echo "りんごです。". "<br />";
}

$fruits“apple”だった場合、という条件判定になります。
==は比較演算子です。これで、変数の左側と右側の値を比べて同じだったら、 { から } の間の処理をします。

ここでは$fruits“apple”を格納しているので、“りんごです。”が出力されます。

else文

次に、else文を使用しています。

if ($fruits == "grape") {
    echo "紫色です。". "<br />";
} else {
    echo "きれいな色です。". "<br />";
}

まず、$fruits“grape”だった場合は、“紫色です。”と出力されるようにしています。
この後にelse文が続いていて、そうじゃなかった場合に“きれいな色です。”と出力されます。
このようにif文の後にelse文は書くことになり、if文と一緒に使用します。

ここでは、$fruits“apple”なので、“きれいな色です。”が出力されます。

else if文

$random = mt_rand(0, 3);
if ($random == 0) {
    echo "大当たり〜". "<br />";
} else if ($random == 1) {
    echo "中当たり。". "<br />";
} else if ($random == 2) {
    echo "小当たり。。". "<br />";
} else {
    echo "ハズレ....". "<br />";
}

まずは、$random変数に値を格納しています。
mt_land関数はPHPの関数です。ランダムな値を取得してくれます。
mt_land関数によって、$randomには0〜3のいずれかの値が入ります。

最初にif文が登場して、$randomが0だった場合は、“大当たり〜”と出力します。
次にelse if文が登場しています、$randomが1だった場合は“中当たり。”が出力されます。
(if文にあてはまらず、else ifの条件にあてはまる場合)

そして、その次もelse if文が登場しています。
このように、「そうじゃなかったら〜の場合xxxする」という感じで、複数書くことができます。
ここでは$randomが2だった場合は“小当たり。。”が出ますね。

最後に、else文が登場して、
最終的に、どれにもあてはまらなかった場合の処理をしてくれます。
ここでは0-2までの処理を書いているので、そうでない場合は3の時だけですね。

mt_rand関数で毎回値が変わるので、ここで出力する結果は画面を再読み込みするたびに変わります。

動作確認

想定通りの結果が出力されているか確認してみましょう。前回作成した環境を立ち上げます。
fruit_associative_array.phpの編集が終わったら、保存して下記にアクセスします。

http://localhost:8080/if_fruits_and_lottey.php

想定した結果が返ってきました!

おわりに

今回はif – else文を見ていきました。
プログラムの中で条件分岐をする処理も日常茶飯事でよく使うものですので、覚えていきましょう。

参考

公式ドキュメント – mt_rand
PHP: mt_rand - Manual
公式ドキュメント – if
PHP: if - Manual

コメント

タイトルとURLをコピーしました