2009-05-15 20:34:32

【cfif】条件分岐

テーマ:ColdFusionのタグ
cfifタグは条件で処理を分ける時に使用します。

01: <cfset c = "">
02: <cfif isDefined("url.a")>
03:     <cfset c = url.a>
04: <cfelse>
05:     <cfset c = "no url">
06: </cfif>

cfelseifタグを使うこともあります。

01: <cfset c = "">
02: <cfif isDefined("url.a")>
03:     <cfset c = url.a>
04: <cfelseif isDefined("url.b")>
05:     <cfset c = url.b>
06: <cfelse>
07:     <cfset c = "no url">
08: </cfif>

このように、cfifタグ,cfelseifタグ,cfelseタグ内の式の値がtrueの場合に、直後のコードを実行します。
同様に以下のような例を示します。

01: <cfif a eq 1>
02:     <cfset b = 1>
03: <cfelseif a eq 2>
04:     <cfset b = 2>
05: <cfelse>
06:     <cfset b = 3>
07: </cfif>

上記の場合は、変数aの値によって、変数bの値をそれぞれセットしています。
この場合は、以下のタグに置き換えることができます。

01: <cfswitch expression="#a#">
02:     <cfcase value="1">
03:         <cfset b = 1>
04:     </cfcase>
05: 
06:     <cfcase value="2">
07:         <cfset b = 2>
08:     </cfcase>
09: 
10:     <cfdefaultcase>
11:         <cfset b = 3>
12:     </cfdefaultcase>
13: </cfswitch>

このようにするとわかりやすいですね。
さらにcfcaseタグのvalue部分は、リスト形式に示すことができます。

01: <cfswitch expression="#a#">
02:     <cfcase value="1,3">
03:         <cfset b = 1>
04:     </cfcase>
05: 
06:     <cfcase value="2,4">
07:         <cfset b = 2>
08:     </cfcase>
09: 
10:     <cfdefaultcase>
11:         <cfset b = 3>
12:     </cfdefaultcase>
13: </cfswitch>

上記の使い方では、処理をイベントとして考える方法があります。
01: <cfswitch expression="#event#">
02:     <cfcase value="insert">
03:         <!--- insertの処理 --->
04:     </cfcase>
05: 
06:     <cfcase value="update">
07:         <!--- updateの処理 --->
08:     </cfcase>
09: 
10:     <cfcase value="delete">
11:         <!--- deleteの処理 --->
12:     </cfcase>
13: 
14:     <cfdefaultcase>
15:         <!--- その他の処理 --->
16:     </cfdefaultcase>
17: </cfswitch>

プログラムを作るときにはイベントで処理が行われると考えると、すっきりします。

cfifのドキュメントはこちらです(cf7)。
AD
いいね!した人  |  コメント(0)  |  リブログ(0)

うたらぼさんの読者になろう

ブログの更新情報が受け取れて、アクセスが簡単になります

コメント

[コメントをする]

コメント投稿

AD

Ameba人気のブログ

Amebaトピックス

      ランキング

      • 総合
      • 新登場
      • 急上昇
      • トレンド

      ブログをはじめる

      たくさんの芸能人・有名人が
      書いているAmebaブログを
      無料で簡単にはじめることができます。

      公式トップブロガーへ応募

      多くの方にご紹介したいブログを
      執筆する方を「公式トップブロガー」
      として認定しております。

      芸能人・有名人ブログを開設

      Amebaブログでは、芸能人・有名人ブログを
      ご希望される著名人の方/事務所様を
      随時募集しております。