cfloop: looping over a list or file

Description

Looping over a list steps through elements contained in any of these entities:

Syntax

<cfloop 
index = "index_name"
list = "list_items"
delimiters = "item_delimiter">
...
</cfloop>

See also

cfabort, cfbreak, cfexecute, cfexit, cfif, cflocation, cfswitch, cfthrow, cftry; cfloop and cfbreak in Elements of CFML in ColdFusion MX Developer's Guide

Attributes

Attribute Req/Opt Default Description

index

Required

 

In a list loop, the variable to receive the next list element.

list

Required

 

A list, variable, or filename; contains a list.

delimiters

Optional

 

Character(s) that separates items in list.

Example

This loop displays four names:

<cfloop index = "ListElement" 
   list = "John,Paul,George,Ringo"> 
      <cfoutput>#ListElement#</cfoutput><br> 
</cfloop>

You can put more than one character in the delimiters attribute, in any order. For example, this loop processes commas, colons, and slashes as list delimiters:

<cfloop index = "ListElement" 
   list = "John/Paul,George::Ringo" 
   delimiters = ",:/"> 
      <cfoutput>#ListElement#</cfoutput><br> 
</cfloop>

ColdFusion skips the second and subsequent consecutive delimiters between list elements. Thus, in the example, the two colons between "George" and "Ringo" are processed as one delimiter.

To loop over each line of a file, use the tag this way:

<cfloop list="#theFile#" 
   index="curLine" 
   delimiters="#chr(10)##chr(13)#"> 
   ...
</cfloop>

View comments in LiveDocs