Adobe 38043740 - ColdFusion Standard - Mac Development Manual page 91

Developing applications
Hide thumbs Also See for 38043740 - ColdFusion Standard - Mac:
Table of Contents

Advertisement

DEVELOPING COLDFUSION 9 APPLICATIONS
The CFML Programming Language
<cfset i="CP">
<cfset "#i#"=["Charlie","Parker"]>
Creating complex multidimensional arrays
ColdFusion supports dynamic multidimensional arrays. When you declare an array with the
specify the number of dimensions. You can create an asymmetrical array or increase the number of dimensions by
nesting arrays as array elements.
It is important to know that when you assign one array (array1) to an element of another array (array2), array1 is
copied into array2. The original copy of array1 still exists, independent of array2. You can then change the contents of
the two arrays independently.
The best way to understand an asymmetrical array is by looking at it. The following example creates an asymmetric,
multidimensional, array, and the
contain data.
<cfset myarray=ArrayNew(1)>
<cfset myotherarray=ArrayNew(2)>
<cfset biggerarray=ArrayNew(3)>
<cfset biggerarray[1][1][1]=myarray>
<cfset biggerarray[1][1][1][10]=3>
<cfset biggerarray[2][1][1]=myotherarray>
<cfset biggerarray[2][1][1][4][2]="five deep">
<cfset biggestarray=ArrayNew(3)>
<cfset biggestarray[3][1][1]=biggerarray>
<cfset biggestarray[3][1][1][2][3][1]="This is complex">
<cfset myarray[3]="Can you see me">
<cfdump var=#biggestarray#><br>
<cfdump var=#myarray#>
Note: The
tag displays the entire contents of an array. It is an excellent tool for debugging arrays and array-
cfdump
handling code.
Reviewing the code
The following table describes the code:
Code
<cfset myarray=ArrayNew(1)>
<cfset myotherarray=ArrayNew(2)>
<cfset biggerarray=ArrayNew(3)>
<cfset biggerarray[1][1][1]=myarray>
<cfset biggerarray[1][1][1][10]=3>
<cfset biggerarray[2][1][1]=myotherarray>
<cfset biggerarray[2][1][1][4][2]="five deep">
tag displays the resulting array structure. Several array elements do not yet
cfdump
Last updated 1/20/2012
Description
Create three empty arrays, a 1D array, a 2D array, and a 3D array.
Make element [1][1][1] of the 3D
biggerarray
of the 1D array. Assign 3 to the [1][1][1][10] element of the
resulting array.
The biggerarray array is now asymmetric. For example, it does
not have a [1][1][2][1] element.
Make element [2][1][1] of the 3D array be the 2D array, and
assign the [2][1][1][4][2] element the value
The biggerarray array is now even more asymmetric.
86
function, you
ArrayNew
array be a copy
.
"five deep"

Advertisement

Table of Contents
loading

This manual is also suitable for:

Coldfusion 9

Table of Contents