if文

 プログラムの処理を条件により分岐させることができます。この分岐は、「もし、今日が平日ならば仕事に行く」というように、日常でも「もし、~であれば、~する」という場面が多くあります。それをプログラムで表現するために使用できる命令文として、if文があります。

if文の書式1
if(条件式){
 処理;
}

if文
if文

○ ファイル

 次のようにファイルを作成してください。

ファイルの種類 PHP ファイル
ファイル名 iftest1.php

サンプルダウンロード

○ プログラム

 次のようにプログラムを入力してください。

  1. <?php
  2. //文字化け対策
  3. header("Content-Type: text/html; charset=utf-8");
  4. $str = '平日';
  5. //平日の場合、メッセージを表示
  6. if($str == '平日'){
  7.  print('今日は仕事があります。');
  8. }

○ フローチャート

○ 実行結果

(変数$strに「平日」を代入した場合)

実行結果

(変数$strに「休日」を代入した場合)

実行結果 実行結果

○ 解説

 5行目では変数$strに「平日」を格納しています。 実行確認するときにこの変数に値を入れなおしてください。

 8行目で変数に格納したデータを比較しています。条件として変数$strに格納されているデータが「平日」と等しければ、9行目の命令文で画面に表示されます。条件が満たされない場合は何も処理しません。

 次に、「もし、今日が平日ならば仕事に行く、その他の場合は、遊びに行く」というような、「もし、~であれば、~をし、その他の場合は、~する」という条件を見てみましょう。

if文の書式2
if(条件式){
 処理;
}else{
 処理2;
}

if文
if文

○ ファイル

 次のようにファイルを作成してください。

ファイルの種類 PHP ファイル
ファイル名 iftest2.php

サンプルダウンロード

○ プログラム

 次のようにプログラムを入力してください。

  1. <?php
  2. //文字化け対策
  3. header("Content-Type: text/html; charset=utf-8");
  4. $str = '平日';
  5. //平日の場合、メッセージを表示
  6. if($str == '平日'){
  7.  print('今日は仕事があります。');
  8. }else{
  9.  print('今日は遊びに行きましょう。');
  10. }

○ フローチャート

○ 実行結果

(変数$strに「平日」を代入した場合)

実行結果

(変数$strに「休日」を代入した場合)

実行結果
実行結果

○ 解説

 8行目で入力したデータを比較しています。条件として変数$strに格納されているデータが「平日」と等しければ、9行目の命令文で画面に表示されます。10行目でelse文が記述されているので、条件が満たされない場合は11行目の命令文でメッセージが表示されます。

 変数に格納されている内容によって「今日は仕事があります。」か「今日は遊びに行きましょう。」が表示されます。今回のサンプルでは「平日」と格納すれば「今日は仕事があります。」と表示され、それ以外を格納すると「今日は遊びに行きましょう。」と表示されます。

 次に、「もし、今日が平日ならば仕事に行く、その他もし、休日ならば遊びに行く、その他の場合は、なにもしない」というような、「もし、~であれば、~をし、その他もし~であれば、~をし、その他の場合は、~する」という条件を見てみましょう。

if文の書式3
if(条件式){
 処理;
}else if(条件式2){
 処理2;
}else{
 処理3;
}

if文
if文

○ ファイル

 次のようにファイルを作成してください。

ファイルの種類 PHP ファイル
ファイル名 iftest3.php

サンプルダウンロード

○ プログラム

 次のようにプログラムを入力してください。

  1. <?php
  2. //文字化け対策
  3. header("Content-Type: text/html; charset=utf-8");
  4. $str = '平日';
  5. //平日の場合、メッセージを表示
  6. if($str == '平日'){
  7.  print('今日は仕事があります。');
  8. }else if($str == '休日'){
  9.  print('今日は遊びに行きましょう。');
  10. }else{
  11.  print('今日は家でおとなしくしていましょう。');
  12. }

○ フローチャート

○ 実行結果

(変数$strに「平日」を代入した場合)

実行結果

(変数$strに「休日」を代入した場合)

実行結果

(変数$strに「その他」を代入した場合)

実行結果
実行結果

○ 解説

 8行目で変数に格納したデータを比較しています。条件として変数$strに格納されているデータが「平日」と等しければ、9行目の命令文で画面に表示されます。10行目で「else if」文が記述されているので、さらに変数に格納されたデータを比較しています。条件として変数$strに格納されているデータが「休日」と等しければ、11行目の命令文で画面に表示されます。12行目で「else」文が記述されているので、条件が満たされない場合は13行目の命令文でメッセージが表示されます。

 「else if」文は複数指定することができます。また、「else」文は省略することもできます。

 次に条件文に複数の条件を指定する方法を見てみましょう。複数の条件を組み合わせて一つの条件として扱います。その方法として「論理積」と「論理和」があります。そして「論理否定」も確認してみましょう。

■ 論理積

 論理積は複数の条件のいずれも満たされる場合に真と判断されます。

論理積の書式
条件式1 && 条件式2

○ ファイル

 次のようにファイルを作成してください。

ファイルの種類 PHP ファイル
ファイル名 iftest4.php

サンプルダウンロード

○ プログラム

 次のようにプログラムを入力してください。

  1. <?php
  2. //文字化け対策
  3. header("Content-Type: text/html; charset=utf-8");
  4. $age = 15;
  5. //小学生かどうか
  6. if($age >= 6 && $age <= 12){
  7.  print('小学生です。');
  8. }else{
  9.  print('小学生ではありません。');
  10. }

○ フローチャート

○ 実行結果

(変数$ageに「10」を代入した場合)

実行結果

(変数$ageに「15」を代入した場合)

実行結果
実行結果

○ 解説

 8行目で入力した年齢が6歳以上かつ12歳以下かどうかを判断しています。その範囲内にあれば条件が「true」と判断されて9行目が実行されます。範囲外であれば11行目が実行されます。

■ 論理和

 論理和は複数の条件のいずれかが満たされる場合に真と判断されます。

論理和の書式
条件式1 || 条件式2

○ ファイル

 次のようにファイルを作成してください。

ファイルの種類 PHP ファイル
ファイル名 iftest5.php

サンプルダウンロード

○ プログラム

 次のようにプログラムを入力してください。

  1. <?php
  2. //文字化け対策
  3. header("Content-Type: text/html; charset=utf-8");
  4. $vehicle = '電車';
  5. //車かオートバイかを判断
  6. if($vehicle == '車' || $vehicle == 'オートバイ'){
  7. print('公共交通機関をご利用ください。');
  8. }

○ フローチャート

○ 実行結果

(変数$vehicleに「車」か「オートバイ」を代入した場合)

実行結果

(変数$vehicleに「電車」を代入した場合)

実行結果
実行結果

○ 解説

 8行目で変数に格納した乗り物が「車」か「オートバイ」であれば、9行目が実行されてメッセージが表示されます。それ以外の場合は何も処理されません。

■ 論理否定

 論理否定は真の時には偽と、偽の時には真と判断されます。

論理否定の書式
!条件式

○ ファイル

 次のようにファイルを作成してください。

ファイルの種類 PHP ファイル
ファイル名 iftest6.php

サンプルダウンロード

○ プログラム

 次のようにプログラムを入力してください。

  1. <?php
  2. //文字化け対策
  3. header("Content-Type: text/html; charset=utf-8");
  4. $weather = '雨';
  5. //雨でないかどうか
  6. if(!($weather == '雨')){
  7.  print('傘は必要ありません。');
  8. }else{
  9.  print('傘が必要です。');
  10. }

○ フローチャート

○ 実行結果

(変数$weatherに「晴れ」や「曇り」を代入した場合)

実行結果

(変数$weatherに「雨」を代入した場合)

実行結果
実行結果

○ 解説

 8行目で入力した天気が「雨」でなければ、9行目が実行されてメッセージが表示されます。「雨」の場合は11行目が実行されてメッセージが表示されます。

前へ   次へ