こんにちは。先日ヘッドホンを買い換えて少し浮かれているひろです。
phpを使ってweb開発をする際に必ず出てくるif文を使った条件分岐ですが、if文は難しいですよね。
if文ってどうやって扱うんだろう?
ちょっと複雑なif文を使いたいんだけど、どうやって使えばいいのかわからない……。
こんな悩みは初心者であれば誰もが通った道だと思います。
そこで今回は、このif文の使い方についてわかりやすく説明します!是非参考にしてみてくださいね。
目次 [非表示]

if文は条件式と処理の2つのパーツで構成される
以下のコードを見てください。
これが基本的なif文の書き方です。詳しく解説していきます。
条件式はtrueかfalseを判定する
先程の式の、
が条件式です。
この条件式というのは、「与えられた条件に対し、その通りかどうかを判別する」文で、trueかfalseで判定できる式である必要があります。
この例の条件式を日本語に訳すと、「$numberは10ですか?」となり、実際に$numberは10なので、この条件式はtrueとなります。
処理は条件式の結果によって行うかどうかが決定される
先程の式の、
という部分が処理の部分になります。
この処理は条件式がtrueとなった場合にのみ処理されます。今回の場合は条件式がtrueなのでこの処理が実行されます。もしも条件式がfalseの場合はこの処理は実行されません。
条件式の条件は複数設定できる
条件式の中身は、実は「〇〇かつ△△のとき」、つまり両方の条件を満たしたときにtrueとなる場合だったり、「〇〇または△△のとき」、つまりどちらか片方の条件を満たしたときにtrueとなる場合など、条件式は複数設定することが可能です。
ここで使われている「&&」は「かつ」、「||」は「または」という意味で使われています。
実際の例 倍数判定
では、実際にphpファイルを作成し動かしてみましょう。
以下の例では、$numberが5の倍数かどうかの判定をしています。判断する方法は、$numberを5で割ってみてあまりが0であればtrue、そうでなければfalseとなります。
今回の場合、10は5の倍数なので条件式はtrueとなり、処理である「’numberは5の倍数です’を出力します」という処理を実行します。
if文はelseを使うことで「そうでなければ」という条件を追加できる
条件に合わない場合の処理の追加はelseを使う
百聞は一見にしかずということで、早速以下の例を見てみます。
条件式で$numberが10かどうかを判定しています。この場合は10ではないので、条件式はfalseになります。なので、先程の場合であれば処理が行われないですが、今回はelse以下に処理を追加しています。elseというのは「そうでなければ次の処理をする」という意味です。
今回であれば、結果的に行われる処理は2つ目の処理である「’numberは10ではありません’を出力します」という処理を実行します。
実際の例 2つの文字式の判別
こちらもぜひ実際に動かしてみてください。
今回は、2つの変数が同じかどうかの判定を行い、同じであればtrue、違うものであればfalseとなります。
今回の場合、$number1と$number2は違いますので、「’number1とnumber2は違います’を出力します」という処理が行われます。

elseifを追加することで「そうでなくて〜〜の場合」という条件を追加できる
条件自体の追加はelseifを使う
例を見ていきます。
今回の例のように、1つ目の条件式がfalseになった場合に再度新しい条件式で判定する、という場合にはelseifを使います。
今回の場合、まず1つ目の条件式は100より大きいかの判定ですが、$numberは70なのでfalseとなります。そうすると、その次の条件式に移り、$numberが50より大きいかの判定となり、この判定はtrueとなり、「’numberは100より小さいですが、50より大きいです’を出力します」という処理を行います。
実際の例 倍数判定
今回は、先程の倍数判定よりも難しい条件でif文を使ってみます。
条件は、以下のとおりです。
$numberは183とし、$numberに対して以下の条件でif文を用いて条件分岐をさせてください。
- 3の倍数のときは「にゃー」と出力する
- 7の倍数のときには「わん」と出力する
- 3の倍数かつ7の倍数のときには「にゃーわん」と出力する
- 3の倍数でも7の倍数でもないときは「ぶー」と出力する
今回は複雑な条件分岐になりました。みなさんはどのようにif文を作成しますか?
ヒントとしては、「かつ」を使うと楽に作れるかもしれません。
以下、実際の実装例です。みなさんもぜひ自分で手を動かしてみてくださいね。
今回の実装例はあくまで一例ですので、もしかしたら皆さんの考えた実装とは違うかもしれませんが、実際に動かしてみて問題がなければ、それも正解です。
まとめ
いかがでしたか?今回は、
について見て紹介しました。phpを扱う上で必ず使うことになるif文ですが、最初はとても難しく感じますよね。もしもif文で詰まったときには、この記事を是非参考にしてみてください。