cfloop: looping over a list or file
239
cfloop: looping over a COM collection or structure
Description
The
cfloop
collection
attribute loops over every object within a COM/DCOM collection
object, or every element in a structure:
•
A COM/DCOM collection object is a set of similar items referenced as a group. For example,
the group of open documents in an application is a collection.
•
A structure contains a related set of items, or it can be used as an associative array. Looping is
particularly useful when using a structure as an associative array.
In the loop, each item is referenced by the variable name in the
item
attribute. The loop executes
until all items have been accessed.
The
collection
attribute is used with the
item
attribute. In the example that follows,
item
is
assigned a variable called
file2
, so that with each cycle in the
cfloop
, each item in the collection
is referenced. In the
cfoutput
section, the
name
property of the
file2
item is referenced for
display.
Example
This example uses a COM object to output a list of files. In this example,
FFunc
is a collection of
file2
objects.
<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>
<!---Loop through a structure that is used as an associative array: --->
...<!--- Create a structure and loop through its contents --->
<cfset Departments = StructNew()>
<cfset val = StructInsert(Departments, "John ", "Sales ")>
<cfset val = StructInsert(Departments, "Tom ", "Finance ")>
<cfset val = StructInsert(Departments, "Mike ", "Education ")>
<!--- Build a table to display the contents --->
<cfoutput>
<table cellpadding = "2 " cellspacing = "2 ">
<tr>
<td><b>Employee</b></td>
<td><b>Dept.</b></td>
</tr>
<!--- Use item to create the variable person to hold value of key as loop runs
--->
<cfloop collection = #Departments# item = "person ">
<tr>
<td>#person#</td>
<td>#StructFind(Departments, person)#</td>
</tr>
</cfloop>
</table>
</cfoutput>
Summary of Contents for COLDFUSION MX 61-CFML
Page 1: ...CFML Reference...
Page 16: ...16 Contents...
Page 32: ...32 Chapter 1 Reserved Words and Variables...
Page 160: ...160 Chapter 2 ColdFusion Tags html...
Page 245: ...cfmail 245 p input type Submit name form...
Page 299: ...cfreturn 299 cffunction cfcomponent...
Page 354: ...354 Chapter 2 ColdFusion Tags cfoutput cfcatch cftry...
Page 357: ...cfupdate 357 cftable cfif body html...
Page 362: ...362 Chapter 2 ColdFusion Tags cfloop MyDoc cfxml cfdump var MyDoc...
Page 397: ...ASin 397 br input type Text name sinNum size 25 p input type Submit name input type RESET form...
Page 486: ...486 Chapter 3 ColdFusion Functions input type Submit NAME form...
Page 492: ...492 Chapter 3 ColdFusion Functions b http_content x content b cfoutput...
Page 504: ...504 Chapter 3 ColdFusion Functions tr table form...
Page 519: ...IIf 519 cfoutput b...
Page 534: ...534 Chapter 3 ColdFusion Functions input type Submit name form...
Page 542: ...542 Chapter 3 ColdFusion Functions cfif cfif...
Page 547: ...IsStruct 547 cfcase cfswitch...
Page 550: ...550 Chapter 3 ColdFusion Functions IsWDDX returns IsWDDX packet br cfoutput...
Page 559: ...Left 559 option value 9 9 select input type Submit name Remove characters form...
Page 620: ...620 Chapter 3 ColdFusion Functions cfoutput cfloop...
Page 681: ...SetVariable 681 p Your variable varName p The value of varName is varNameValue cfoutput cfif...
Page 724: ...724 Chapter 3 ColdFusion Functions cfelse h3 Conversion error h3 cfif...
Page 743: ...XmlNew 743 cfscript cfdump var MyDoc...
Page 786: ...786 Chapter 5 ColdFusion Java CFX Reference...
Page 798: ...798 Chapter 6 WDDX JavaScript Objects...
Page 806: ...806 Chapter 7 ColdFusion ActionScript Functions...