複数の条件をまとめる

今回は「20歳以上で、且つ 社会人」「20歳以上、または 社会人」といった複数の条件をまとめる方法を見ていきます。「且つ」は「&&」、「または」は「 || 」で表すことができます。
※ | (縦線・パイプ記号) は、Shift + ¥ で入力することができます。

以下は、ユーザーが入力した年齢を基づいて、メッセージを出力する記述例です。
0未満、または 150よりも大きい数値が入力された場合は、不正な入力と見なします。年齢が20代の場合は「入会可能」というメッセージを表示させます。

<?php
// ユーザーが入力した年齢を取得
$age = $_POST["age"];

if($age < 0 || $age > 150) { 
    // 年齢が0未満 または 150より大きい場合
    echo "0~150 の間で入力してください";
} elseif($age >= 20 && $age < 30) {
    // 20代(20歳以上で 且つ 30歳未満)の場合
    echo "入会可能です";
} else {
    echo "入会できません";
}

「且つ」の書き換え

&& を使う代わりに if ブロックの中に ifブロックを記述することも可能です。

if($age >= 20) {
  if($age < 30) {
     echo "入会可能です";
  }  
}

「または」の書き換え

|| を使う代わりに、elseif を使用することも可能です。

if($age < 0) {
   echo "0~150 の間で入力してください";
} elseif($age > 150) {
   echo "0~150 の間で入力してください";
}
Last modified: 2021-07-02

Author