条件分岐

他のプログラム言語でも利用されている「条件分岐」を使いこなすことで、実に有用で複雑な動作を実現させることができます。
条件分岐とは、ある条件が満たされているのかを判断し、その後の処理を変えることができる「制御構文」の1つです。こうした条件分岐を利用することで、閲覧者からの操作や反応などによって、別の処理に誘導することができ、その中に多くの処理スクリプトを配置させることが可能です。
PHPでは、条件分岐を構成する2つの制御構文が用意されています。
if構文
条件分岐の制御構文で代表的なのが、if構文です。if構文では、最初に式を評価し、その条件を判断して処理スクリプトを実行します。
  if(条件式) {
     条件が満たされたときの処理スクリプト
  }
このように、与えられた条件式の「真偽」を評価して、その結果によって剃りさせたいスクリプトに誘導します。
<?php
  $a = 10;
    if($a > 5) {
      print("変数\$a は、5 よりも大きい");
   }
?>
上記スクリプトの実行結果は以下のとおりです。
if構文を使った条件分岐の実行結果を Mozillaブラウザで出力した画像
変数$a の値を条件式で評価して、その結果が「true」と判断され、処理スクリプトを実行した結果です。
もし、条件式で「false」と評価された場合、ブロック内の処理スクリプトは実行されません。しかしその場合、閲覧者がその結果を知ることができません。
else
if構文の条件式が「false」を返したとき、別の処理スクリプトへ誘導するために else文を使います。
elseを簡単に説明すると、もし〜ならば、〜であるが、そうでない場合は〜である、というところの「そうでない場合」を指定するものです。
<?php
  $a = 3;
    if($a > 5) {
      print("変数\$a は、5 よりも大きい");
   } else {
      print("変数\$a は、5 よりも小さい");
?>
else文は、入れ子にしてより細かな条件設定を行うことができます。
また、elsif を使って入れ子にすることができます。閲覧者の反応に答えるため、さらに細かな処理スクリプトを書くことが可能になります。
<?php
  $a = 3;
    if($a > 5) {
      print("変数\$a は、5 よりも大きい");
   } elseif($a >10) {                   // elseif文
      print("変数\$a は、10よりも大きい");
   } else {
      print("変数\$a は、5 よりも小さい");
?>
switch構文
switch文は、変数の値に応じて条件分岐する制御構文で、case文と共に利用します。switch文の基本的な書式は以下のとおりです。
switch(変数または式) {
  case "値1":
     変数の値が、値1のときに処理するスクリプト
   break;

 case "値2":
     変数の値が、値2のときに処理するスクリプト
   break;

 case "値3":
     変数の値が、値3のときに処理するスクリプト
   break;

  default:
    変数の値がいずれの case の値と一致しなかった場合のスクリプト
  }
switch文は同じ変数を繰り返して評価するための条件を、その引数に設定することで、効率的で便利な条件分岐が行えます。記述の際に間違えやすいのは、コロンとセミコロンです。注意しましょう。
条件がマッチしたときに、処理を行います。なお、処理が終わったら break文で、構文から抜け出すように明示しておくことが大切です。caseは任意にいくらでも設定することが可能なため、非常に細かな条件を設定することが可能です。
<?php
  $age = 20;
   switch($age) {
     case "15":
       print("勉強に励んでください");
     break;

    case "20":
      print("若くてうらやましいです");
      break;

    case 30:
      print("これから人生の本番です");
      break;

  default:
      print("人生は悩み多きものです");
 }
このスクリプトでは、あらかじめ条件に用いる値を「20」にしていますが、switch構文は閲覧者からの入力によってインタラクティブに反応する構文が書けます。以下は、このスクリプトの実行結果です。
switch構文を使った条件分岐の実行結果を Mozillaブラウザで出力した画像
swithcで指定した値が一致した case文の処理スクリプトによって、Webブラウザに結果を出力しています。ここでは、case 20: が選択されています。
条件分岐のそれぞれの構文は、複雑なスクリプトを作成する意味でも欠かすことができません。ある条件のもとに出力させるという手法は、様々なシーンで利用されるに違いありません。


This Page is HTML4.01 Valid! 最新更新日 2004年1月18日   最新更新日 2004年4月1日
Copyright(C) 2002〜2004 banban@scollabo.com