DE | |
説明
パラメータ内の二重引用符 (") をエスケープし、結果を二重引用符で囲みます。 |
|
戻り値
二重引用符で囲まれたパラメータ。内部の二重引用符はエスケープされます。 |
|
カテゴリ
ダイナミック評価関数 |
|
関数のシンタックスDE(string) |
|
関連項目
Evaluate、IIf、『ColdFusion MX 開発ガイド』の第4章の「式と # 記号の使用」 |
|
パラメータ
|
|
使用方法
DE 関数は、パラメータとして IIf 関数または Evaluate 関数に渡される文字列が評価されるのを遅らせます。 この関数を IIf 関数と共に使用すると、2 番めと 3 番めのパラメータを式として自動的に評価できるので便利です。DE 関数を使用すると、変数として出力し、式として処理する必要がない文字列パラメータの評価を避けることができます。次の例でその使い方を示します。IIF を使用して、テーブル行の背景色として白とグレーを交互に設定します。また、DE 関数を使用して、ColdFusion で色の文字列が評価されないようにします。 <cfoutput> <table border="1" cellpadding="3"> <cfloop index="i" from="1" to="10"> <tr bgcolor="#IIF( i mod 2 eq 0, DE("white"), DE("gray") )#"> <td> hello #i# </td> </tr> </cfloop> </table> </cfoutput> DE 関数は、シャープ記号 (#) で囲まれた変数名の評価は遅らせません。ColdFusion 関数は、DE 関数が存在するかどうかに関係なく、変数を評価します。 次の例では、DE 関数とシャープ記号を一緒に使用する方法、およびこの関数を IIF 関数と共に使用する場合の動作を示します。 <cfoutput> <cfset var1=Blue> <cfset var2=Green> <cfset myresult=IIf( 1 eq 2, DE(#Var1#), DE(#Var2#))> 式は #myresult# </cfoutput> ColdFusion は、このコードを次のように処理します。
|
|
例<!--- この例は、DE と Evaluate の使用方法を示しています。 ---> <h3>DE の例</h3> <cfif IsDefined("FORM.myExpression")> <cftry> <!--- 式および式の評価の結果を表示 ---> <cfoutput> <h3>式 #FORM.MyExpression# を評価</h3> </cfoutput> コード :<br> #Evaluate(FORM.myExpression)# <br><br> 結果 :<br> <cfoutput> #Evaluate(FORM.myExpression)# </cfoutput> <h3>DE を使用して Evaluate 関数の評価を回避</h3> コード :<br> #Evaluate(DE(FORM.MyExpression))#<br><br> 結果 :<br> <cfoutput> #Evaluate(DE(FORM.MyExpression))# </cfoutput> <!--- 無効な式のコード処理エラーとその他のエラー ---> <cfcatch type = "Any"> <!--- 表示するメッセージ ---> <h3><B>エラー</B>が発生しました。 "2+2" のような簡単な式で試してください。</h3> <cfoutput> <!--- ColdFusion からの診断メッセージを表示します。 ---> <p>#cfcatch.message# </cfoutput> </cfcatch> </cftry> </cfif> <h3>有効な ColdFusion 式を入力します。</h3> <cfform> <cfinput name="myExpression" type="Text" size="40"> <cfinput type="submit" name="submitit"> </cfform> |
STRING | |
評価の対象外とする文字列です。 |