CFSCRIPT | |||
説明
cfscript ステートメントを含んでいるコードブロックを囲みます。 |
|||
カテゴリ
アプリケーションフレームワークタグ、その他のタグ | |||
シンタックス<cfscript> ここに cfscript のコードを記述します。 </cfscript> |
|||
関連項目
cfinvoke、cfmodule、CreateObject、『ColdFusion MX 開発ガイド』の第6章の「CFML スクリプト言語を使用した ColdFusion ページの拡張」 |
|||
ヒストリ
ColdFusion MX:
|
|||
使用方法
CFScript で処理を実行します。このタグでは、ColdFusion 関数、式、および演算子が使用されます。このタグ内で ColdFusion 変数の読み書きを行うことができます。 CFScript のステートメント、および CFML タグに対応する CFScript のドキュメントを含めて、CFScript スクリプト言語の詳細については、『ColdFusion MX 開発ガイド』の第6章の「CFML スクリプト言語を使用した ColdFusion ページの拡張」 を参照してください。 cfscript タグを使用して、一連の代入ステートメントを囲むことができます。cfscript を使用しない場合は、cfset ステートメントが必要です。
このタグ内では、一部の ColdFusion 予約語を使用できません。このタグ内に、次の文字列のいずれかで始まる名前のユーザー関数を挿入することはできません。
elseif コンストラクトを cfscript タグ内で使用することはできません。次のようなコードを使用できます。 else if ( condition ) { ... } |
|||
cfscript タグでの例外処理
このタグで例外を処理するには、try および catch ステートメントを使用します。これらは、cftry および cfcatch タグと同じ役割を果たします。各 try ステートメントについて、catch ステートメントが必要です。catch ブロックでは、変数 exceptionVariable に例外タイプが含まれます。この変数は、cfcatch タグのビルトイン変数 cfcatch.Type と同じ役割を果たします。詳細については、『ColdFusion MX 開発ガイド』の第6章の「CFML スクリプト言語を使用した ColdFusion ページの拡張」 を参照してください。 |
|||
cfscript タグを使用した ColdFusion コンポーネントの呼び出し
CFScript では、CreateObject 関数を使用してコンポーネントメソッドを呼び出します。 次の例では、cfscript タグを使用したコンポーネントオブジェクトの呼び出し方法を示します。この例では、指定された引数を使用します。 <cfscript> quote = CreateObject( "component", "nasdaq.quote" ) ; <!--- 指定された引数を使用した呼び出しです。 ---> res = quote.getLastTradePrice( "macr" ) ; </cfscript> 次の例では、コンポーネントオブジェクトの呼び出し時に cfscript タグ内で属性コレクションを使用してパラメータを渡す方法を示します。属性コレクションは構造体です。この構造体では、各キーはパラメータ名に対応し、各値は対応するキーに渡されるパラメータの値となります。 <cfscript> stArgs = structNew(); stArgs.translationmode = "en_es"; stArgs.sourceData= "Hello world, friend"; </cfscript> ... <cfinvoke webservice = "http://www.xmethods.net/sd/2001/BabelFishService.wsdl" method = "BabelFish" argumentCollection = "#stArgs#" returnVariable = "varName" > <cfoutput>#varName#</cfoutput> この例では、構造体は cfscript ブロックとして作成されますが、この構造体は任意の ColdFusion メソッドを使用して作成できます。 |
|||
cfscript タグを使用した Web サービスの利用
次の例では、cfscript タグを使用した Web サービスの利用方法を示します。Web サービスに接続するには、CreateObject 関数を使用します。 <cfscript> ws = CreateObject("webservice", "http://www.xmethods.net/sd/2001/BabelFishService.wsdl"); xlatstring = ws.BabelFish("en_es", "Hello world, friend"); writeoutput(xlatstring); </cfscript> 詳細については、『ColdFusion MX 開発ガイド』の第36章の「Web サービスの使用」 を参照してください。 |
|||
例<p>この簡単な例は、変数の宣言と操作を示します。 <cfif IsDefined("form.myValue")> <cfif IsNumeric(form.myValue)> <cfset x = form.myValue> <cfscript> y = x; z = 2 * y; StringVar = form.myString; </cfscript> <cfoutput> <p> #x# の 2 倍は #z# です。 <p>文字列値。<b><I>#StringVar#</i></b> </cfoutput> <cfelse> |