【cfif】条件分岐
cfifタグは条件で処理を分ける時に使用します。
cfelseifタグを使うこともあります。
このように、cfifタグ,cfelseifタグ,cfelseタグ内の式の値がtrueの場合に、直後のコードを実行します。
同様に以下のような例を示します。
上記の場合は、変数aの値によって、変数bの値をそれぞれセットしています。
この場合は、以下のタグに置き換えることができます。
このようにするとわかりやすいですね。
さらにcfcaseタグのvalue部分は、リスト形式に示すことができます。
上記の使い方では、処理をイベントとして考える方法があります。
プログラムを作るときにはイベントで処理が行われると考えると、すっきりします。
cfifのドキュメントはこちらです(cf7)。
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)。