PHPの条件分岐ってなに?もしも〜ならを簡単に解説!

PHPの条件分岐ってなに?もしも〜ならを簡単に解説!

PHPを使ってプログラミングを始めたばかりの人にとって、「条件分岐」という言葉は少し難しく感じるかもしれません。でも大丈夫!この記事では、子供から大人まで誰でもわかりやすく、PHPの条件分岐について解説します。

条件分岐は「もし○○なら、××する」といった日常の判断と同じ考え方です。例えば、「もし雨が降ったら傘を持っていく」といった場面ですね。プログラミングでも同じような考え方で処理を分けることができます。

条件分岐とは?

条件分岐とは、特定の条件に応じてプログラムの処理を変える仕組みのことです。人間の判断をコンピュータに教えるための方法とも言えます。

日常生活の例で考えてみよう

  • もしお腹が空いていたら、食べ物を食べる
  • もし宿題が終わったら、ゲームをする

このように、何か条件が満たされたときにだけ特定の行動をするという考え方が、プログラムでもそのまま使えます。

PHPで使う基本の条件分岐文

PHPで条件分岐をするには、主に以下の3つの方法があります。

  1. if文
  2. if-else文
  3. switch文

それぞれの使い方を順番に解説していきましょう。

if文(もし〜なら)

最も基本的な条件分岐が「if文」です。

<?php
$age = 18;

if ($age >= 18) {
    echo "あなたは大人です。";
}
?>

説明:

  • $age >= 18 という条件が真(true)の場合、echo “あなたは大人です。”; が実行されます。
  • もし年齢が18未満なら、何も表示されません。

if-else文(もし〜なら、そうでなければ)

条件が成り立たないときに別の処理をしたい場合は「if-else文」を使います。

<?php
$age = 16;

if ($age >= 18) {
    echo "あなたは大人です。";
} else {
    echo "あなたはまだ未成年です。";
}
?>

説明:

  • $age >= 18 が成り立たない場合、else の部分が実行されます。

if-elseif-else文(複数の条件をチェックする)

複数の条件を順番にチェックしたい場合は「if-elseif-else文」を使います。

<?php
$score = 85;

if ($score >= 90) {
    echo "素晴らしい!Aランクです。";
} elseif ($score >= 70) {
    echo "よく頑張ったね!Bランクです。";
} else {
    echo "もう少し頑張ろう!Cランクです。";
}
?>

説明:

  • 順番に条件がチェックされ、最初に当てはまった条件の処理だけが実行されます。

switch文(複数の値を比較する場合に便利)

似たような条件をたくさん並べたい場合は「switch文」が便利です。

<?php
$fruit = "りんご";

switch ($fruit) {
    case "りんご":
        echo "これはりんごです。";
        break;
    case "みかん":
        echo "これはみかんです。";
        break;
    case "バナナ":
        echo "これはバナナです。";
        break;
    default:
        echo "不明な果物です。";
}
?>

説明:

  • $fruit の値が「りんご」なので、「これはりんごです。」が表示されます。
  • break は、それ以降の処理が実行されないようにするための命令です。

条件式でよく使う比較演算子

条件分岐では「条件式」が重要です。その条件式で使う「比較演算子」には以下のようなものがあります。

比較演算子意味
==等しい$a == $b
!=等しくない$a != $b
>より大きい$a > $b
<より小さい$a < $b
>=以上$a >= $b
<=以下$a <= $b

これらを組み合わせることで、より複雑な条件を設定することができます。

複数の条件を組み合わせる(論理演算子)

条件を「かつ」「または」で組み合わせたい場合は、論理演算子を使います。

  • AND(かつ): && または and
  • OR(または): || または or
  • NOT(〜ではない): !

例: ANDとORの使い方

<?php
$age = 20;
$hasTicket = true;

if ($age >= 18 && $hasTicket) {
    echo "イベントに参加できます。";
} else {
    echo "参加条件を満たしていません。";
}
?>

説明:

  • 年齢が18歳以上で、かつチケットを持っている場合にイベントに参加できます。

よくあるミスとその対策

波括弧の付け忘れ

if ($age >= 18) // 波括弧がないと意図しない動作をする場合があります。
    echo "大人です。";

対策: できるだけ波括弧 {} を使う習慣をつけましょう。これにより、意図しない動作やエラーを防ぐことができます。

=== の間違い

  • 誤り: if ($a = 10) (これは代入になってしまいます)
  • 正解: if ($a == 10) (これは比較です)

対策: 条件式を書くときは、必ず「==」を使うことを意識しましょう。

まとめ

PHPの条件分岐は、「もし〜ならどうする?」という日常的な判断と同じ考え方です。

  • if文: 基本的な条件分岐
  • if-else文: 条件が成り立たない場合の処理も書ける
  • switch文: 複数の選択肢がある場合に便利

これらをうまく使いこなすことで、プログラムがもっと自由自在に動かせるようになります。まずは簡単な例から試して、少しずつ理解を深めていきましょう!