User Guide

Table Of Contents
100 Chapter 5: Using Arrays and Structures
Basic array techniques
The following sections describe how to reference array elements, create arrays, add and remove
array elements, and copy arrays.
Referencing array elements
You reference array elements by enclosing the index with brackets: arrayName[x] where x is the
index that you want to reference. In ColdFusion, array indexes are counted starting with position
1, which means that position 1 in the firstname array is referenced as firstname[1]. For 2D arrays,
you reference an index by specifying two coordinates:
myarray[1][1].
You can use ColdFusion variables and expressions inside the square brackets to reference an index,
as the following example shows:
<cfset myArray=ArrayNew(1)>
<cfset myArray[1]="First Array Element">
<cfset myArray[1 + 1]="Second Array" & "Element">
<cfset arrayIndex=3>
<cfset arrayElement="Third Array Element">
<cfset myArray[arrayIndex]=arrayElement>
<cfset myArray[arrayIndex + 1]="Fourth Array Element">
<cfdump var=#myArray#>
Note: The
IsDefined function does not test the existence of array elements. Instead, put any code
that might try to access an undefined array element in a try block and use a catch block to handle
exceptions that arise if elements do not exist.
Creating arrays
In ColdFusion, you declare an array by assigning a variable name to the new array and specifying
its dimensions, as follows:
<cfset mynewarray=ArrayNew(x)>
where x is the number of dimensions (from 1 to 3) in the array that you want to create.
Once you declare an array, you can add array elements, which you can then reference using the
elements’ indexes.
For example, suppose you declare a 1D array called firstname:
<cfset firstname=ArrayNew(1)>
The array firstname holds no data and is of an unspecified length. Next you add data to the array:
<cfset firstname[1]="Coleman">
<cfset firstname[2]="Charlie">
<cfset firstname[3]="Dexter">
After you add these names to the array, it has a length of 3.
Creating complex multidimensional arrays
ColdFusion supports dynamic multidimensional arrays. When you declare an array with the
ArrayNew function, you specify the number of dimensions. You can create an asymmetrical array
or increase an existing arrays dimensions by nesting arrays as array elements.