StructGet

Description

Gets a structure(s) from a specified path.

Return value

An alias to the variable in the PathDesired parameter. If necessary, StructGet creates structures or arrays to make PathDesired a valid variable "path."

Category

Structure functions

Syntax

StructGet(pathDesired)  

See also

Structure functions

History

New in ColdFusion MX: this function can be used on XML objects.

New in ColdFusion MX: if there is no structure or array present in pathDesired, this function creates structures or arrays to make PathDesired a valid variable "path."

Parameters

Parameter Description
pathDesired
Pathname of variable that contains structure or array from which ColdFusion retrieves structure.

Usage

You can inadvertently create invalid structures using this function. For example, if array notation is used to expand an existing array, the specified new element is created, regardless of the type currently held in the array.

Example

<!--- GetStruct() test --->
<cfset test = StructGet( "dog.myscope.test" )>
<cfset test.foo = 1> 
<cfif NOT IsDefined("dog")>
  Dog is not defined<br>
</cfif>
<cfif NOT IsDefined("dog.myscope")>
  Dog.Myscope is not definded<br>
</cfif>
<cfif NOT Isdefined("dog.myscope.test")>
  Dog.Myscope.Test is not defined<br>
</cfif>
<cfif NOT Isdefined("dog.myscope.test.foo")>
  Dog.Myscope.Test.Foo is not defined<br>
</cfif>
<cfoutput>
  #dog.myscope.test.foo#<br>
</cfoutput>
<cfset test = StructGet( "request.myscope[1].test" )>
<cfset test.foo = 2>
<cfoutput>
  #request.myscope[1].test.foo#<br>
</cfoutput>
<cfset test = StructGet( "request.myscope[1].test[2]" )>
<cfset test.foo = 3>
<cfoutput>
  #request.myscope[1].test[2].foo#<br>
</cfoutput>

Comments