Creating and using structures
117
Adding data elements to structures
You add an element to a structure by assigning the element a value or by using a ColdFusion
function. It is cleaner and more efficient to use direct assignment, so only this technique is
described.
You add structure key-value pairs by defining the value of the structure key, as shown in the
following example:
<cfset myNewStructure.key1="A new structure with a new key">
<cfdump var=#myNewStructure#>
<cfset myNewStructure.key2="Now I’ve added a second key">
<cfdump var=#myNewStructure#>
Updating values in structures
You can update structure element values by assignment or by using the
StructUpdate
function.
Direct assignment results in simpler code than using a function, so only the assignment technique
is described.
To update a structure value, assign the key a new value. For example, the following code uses
cfset
and object.property notation to create a new structure element called departments.John,
and changes John’s department from Sales to Marketing. It then uses associative array notation to
change his department to Facilities. Each time the department changes, it displays the results:
<cfset departments=structnew()>
<cfset departments.John = "Sales">
<cfoutput>
Before the first change, John was in the #departments.John# Department<br>
</cfoutput>
<cfset Departments.John = "Marketing">
<cfoutput>
After the first change, John is in the #departments.John# Department<br>
</cfoutput>
<cfset Departments["John"] = "Facilities">
<cfoutput>
After the second change, John is in the #departments.John# Department<br>
</cfoutput>
Getting information about structures and keys
The following sections describe how to use ColdFusion functions to find information about
structures and their keys.
Getting information about structures
To find out if a given value represents a structure, use the
IsStruct
function, as follows:
IsStruct(
variable
)
This function returns True if
variable
is a ColdFusion structure. (It also returns True if
variable
is
a Java object that implements the java.util.Map interface.)
Structures are not indexed numerically, so to find out how many name-value pairs exist in a
structure, use the
StructCount
function, as in the following example:
StructCount(employee)
Summary of Contents for ColdFusion MX
Page 1: ...Developing ColdFusion MX Applications...
Page 22: ...22 Contents...
Page 38: ......
Page 52: ...52 Chapter 2 Elements of CFML...
Page 162: ......
Page 218: ...218 Chapter 10 Writing and Calling User Defined Functions...
Page 250: ...250 Chapter 11 Building and Using ColdFusion Components...
Page 264: ...264 Chapter 12 Building Custom CFXAPI Tags...
Page 266: ......
Page 314: ...314 Chapter 14 Handling Errors...
Page 344: ...344 Chapter 15 Using Persistent Data and Locking...
Page 349: ...About user security 349...
Page 357: ...Security scenarios 357...
Page 370: ...370 Chapter 16 Securing Applications...
Page 388: ...388 Chapter 17 Developing Globalized Applications...
Page 408: ...408 Chapter 18 Debugging and Troubleshooting Applications...
Page 410: ......
Page 426: ...426 Chapter 19 Introduction to Databases and SQL...
Page 476: ...476 Chapter 22 Using Query of Queries...
Page 534: ...534 Chapter 24 Building a Search Interface...
Page 556: ...556 Chapter 25 Using Verity Search Expressions...
Page 558: ......
Page 582: ...582 Chapter 26 Retrieving and Formatting Data...
Page 668: ......
Page 734: ...734 Chapter 32 Using Web Services...
Page 760: ...760 Chapter 33 Integrating J2EE and Java Elements in CFML Applications...
Page 786: ...786 Chapter 34 Integrating COM and CORBA Objects in CFML Applications...
Page 788: ......