
40
DEVELOPING
COLDFUSION 9 APPLICATIONS
The CFML Programming Language
Las
t
upda
te
d 8/5/2010
Variable characteristics
You can classify a variable using the following characteristics:
•
The data type of the variable value, which indicates the kind of information a variable represents, such as number,
string, or date
•
The scope of the variable, which indicates where the information is available and how long the variable persists.
Data types
ColdFusion is often referred to as
typeless
because you do not assign types to variables and ColdFusion does not
associate a type with the variable name. However, the data that a variable represents does have a type, and the data type
affects how ColdFusion evaluates an expression or function argument. ColdFusion can automatically convert many
data types into others when it evaluates expressions. For simple data, such as numbers and strings, the data type is
unimportant until the variable is used in an expression or as a function argument.
ColdFusion variable data belongs to one of the following type categories:
Simple
One value. Can use directly in ColdFusion expressions. Include numbers, strings, Boolean values, and date-
time values.
Binary
Raw data, such as the contents of a GIF file or an executable program file.
Complex
A container for data. Generally represent more than one value. ColdFusion built-in complex data types
include arrays, structures, queries, and XML document objects.
You cannot use a complex variable, such as an array, directly in a ColdFusion expression, but you can use simple data
type elements of a complex variable in an expression.
For example, with a one-dimensional array of numbers called myArray, you cannot use the expression myArray * 5.
However, you could use an expression myArray[3] * 5 to multiply the third element in the array by five.
Objects
Complex constructs. Often encapsulate both data and functional operations. The following table lists the
types of objects that ColdFusion can use, and identifies the chapters that describe how to use them:
Data type notes
Although ColdFusion variables do not have types, it is often convenient to use “variable type” as a shorthand for the
type of data that the variable represents.
ColdFusion can validate the type of data contained in form fields and query parameters. For more information, see
“
Testing for a variable’s existence
” on page 709 and “
Using cfqueryparam
” on page 416.
The
cfdump
tag displays the entire contents of a variable, including ColdFusion complex data structures. It is an
excellent tool for debugging complex data and the code that handles it.
Object type
See
Component Object Model (COM)
“
Integrating COM and CORBA Objects in CFML Applications
” on page
1170
Common Object Request Broker Architecture
(CORBA)
“
Integrating COM and CORBA Objects in CFML Applications
” on page
1170
Java
“
Integrating J2EE and Java Elements in CFML Applications
” on page
1125
ColdFusion component
“
Building and Using ColdFusion Components
” on page
177
Web service
“
Using Web Services
” on page
1093