| CFLOOP: COM コレクションまたは構造体に対するループ | |
| 説明
cfloop タグの collection 属性では、COM/DCOM コレクションオブジェクト内のすべてのオブジェクトや、構造体内のすべての要素に対してループを行います。
ループ内では、各項目が、item 属性に指定した変数名によって参照されます。すべての項目にアクセスが行われるまで、ループが実行されます。 collection 属性は item 属性と共に使用します。次の例では、item 属性に file2 という変数を指定して、cfloop の各サイクルでコレクション内の各項目を参照できるようにしています。cfoutput セクションでは、file2 項目の name プロパティを参照し、表示しています。 詳細については、『ColdFusion MX 開発ガイド』の第38章の「CFML アプリケーションでの COM および CORBA オブジェクトの統合」 を参照してください。 |
|
| 例
この例では、COM オブジェクトを使用してファイルのリストを出力します。この例では、FFunc は file2 オブジェクトのコレクションです。 <cfobject
class = FileFunctions.files
name = FFunc
action = Create>
<cfset FFunc.Path = "c:">
<cfset FFunc.Mask = "*.*" >
<cfset FFunc.attributes = 16 >
<cfset x = FFunc.GetFileList()>
<cfloop collection = #FFUNC# item = "file2">
<cfoutput> #file2.name# <br> </cfoutput>
</cfloop>
<!---連想配列として使用する構造体全体をループ --->
...<!--- 構造体を作成し、その内容全体をループします。 --->
<cfset Departments = StructNew()>
<cfset val = StructInsert(Departments, "John ", "Sales ")>
<cfset val = StructInsert(Departments, "Tom ", "Finance ")>
<cfset val = StructInsert(Departments, "Mike ", "Education ")>
<!--- テーブルを構築して、内容を表示 --->
<cfoutput>
<table cellpadding = "2 " cellspacing = "2 ">
<tr>
<td><b>従業員</b></td>
<td><b>部門</b></td>
</tr>
<!--- item 属性を使用して、ループの実行時にキーの値を保持するための person という変数を作成します。 ---
>
<cfloop collection = #Departments# item = "person ">
<tr>
<td>#person#</td>
<td>#StructFind(Departments, person)#</td>
</tr>
</cfloop>
</table>
</cfoutput>
|
|