ビギナーズ CGI

 初歩から始める初心者向けPerl-CGI講座  

| トップページ | CGI設置 | CGI作成 | 作成事例 | 設置用語 | 作成用語 | 関数リファレンス | FAQ | お問合せ |
  
CGIの設置方法
フリーで配布されているCGIを設置する際の手順や注意事項などの説明です。

CGI作成の初歩
初めてCGIを作る方向けの手順を簡単な例で説明しています。

CGI作成ヒント集
こういう事をする時は、どのように行えばいいのか?など具体的な事例を紹介します。

CGIの設置に関する用語
CGIの作成に関する用語
CGIの設置や作成時に使われている用語や関連知識を掲載しています。

設置に関するFAQ
作成に関するFAQ
設置や作成をする際に起こりがちなトラブルの説明と、よくある質問とその回答を掲載しています。


 
 



if を使って条件分岐させる

何らかの条件の時は〜をするなどの場合、if などを使って条件分岐させます。

書式
if (条件)
{
  一致した場合の処理;
}
もし条件に一致したら、中に書いた処理を行う 条件は必ず必要
elsif (条件)
{
  一致した場合の処理;
}
それ以外で条件に一致したら中に書いた処理を行う 条件は必ず必要
else
{
  処理
}
上記以外の場合は中に書いた処理を行う 条件は絶対付けない

if ($aaa eq "tarou")
{
  $mes = "太郎です";
}
もし変数 $aaa の内容が tarou であれば
変数 $mes に太郎です と代入する
elsif ($aaa eq "zirou")
{
  $mes = "次郎です";
}
それ以外で 変数 $aaa が zirou であれば
変数 $mes に次郎です と代入する
else
{
  $mes = "どちらでもありません";
}
上記に当てはまらなかった場合は、
変数 $mes にどちらでもありません と代入する


上記は if から始まって、elsif で順に条件を設定する事ができ、全て当てはまらなかった
場合は、最後にある else に記載された処理が実行されます。


下のサンプルソースでは 変数 $aaa の値を順に
1より小さいか? → 5より小さいか? → 11より小さいか? → それ以外の値か?
と比較されて一致した場合は記述した処理を実行し、それ以降の比較は行われません




条件で、if だけでも結構ですし、 else が無くても構いません。
例えば上記で else を無くすと3回比較した後、一致しなければ何も処理を行いません。



if や elseif なのに条件が無かったり、 else なのに条件があったりするとエラーとなります。
下の一覧で、正しく動作する例と、エラーとなる例を記載しましたのでご参照下さい。

if (条件)
{
  〜;
}
OK
if (条件)
{
  〜;
}
elsif (条件)
{
  〜;
}
OK
if (条件)
{
  〜;
}
else
{
  〜;
}
OK
if (条件)
{
  〜;
}

if (条件)
{
  〜;
}
OK
elsif (条件)
{
  〜;
}
NG
いきなりelsifから始まってはいけません
else
{
  〜;
}
NG
いきなりelseから始まってはいけません
if (条件)
{
  〜;
}
else (条件)
{
  〜;
}
NG
else に条件があってはいけません
if
{
  〜;
}
NG
if に条件は必須です
if (条件)
{
  〜;
}
elsif
{
  〜;
}
NG
elsif も条件は必須です




関連項目

・ CGIの作成に関する用語
・ CGI作成に関するFAQ


Beginner's CGI  - Copyright (C) 2003 aimix. All Rights Reserved -