Adobe ColdFusion 8

Variables

Variables are the most frequently used operands in ColdFusion expressions. Variable values can be set and reset, and can be passed as attributes to CFML tags. Variables can be passed as parameters to functions, and can replace most constants.

ColdFusion has a number of built-in variables that provide information about the server and are returned by ColdFusion tags. For a list of the ColdFusion built-in variables, see "Reserved Words and Variables" in the CFML Reference.

The following two characteristics classify a variable:

  • The scope of the variable, which indicates where the information is available and how long the variable persists
  • The data type of the variable's value, which indicates the kind of information a variable represents, such as number, string, or date

The following section lists and briefly describes the variable scopes. Data types lists data types (which also apply to constant values). For detailed information on ColdFusion variables, including data types, scopes, and their use, see Using ColdFusion Variables.

Variable scopes

The following table describes ColdFusion variable scopes:

Scope

Description

Variables (local)

The default scope for variables of any type that are created with the cfset and cfparam tags. A local variable is available only on the page on which it is created and any included pages.

Form

The variables passed from a form page to its action page as the result of submitting the form.

URL

The parameters passed to the current page in the URL that is used to call it.

Attributes

The values passed by a calling page to a custom tag in the custom tag's attributes. Used only in custom tag pages.

Caller

A reference, available in a custom tag, to the Variables scope of the page that calls the tag. Used only in custom tag pages.

ThisTag

Variables that are specific to a custom tag, including built-in variables that provide information about the tag. Used only in custom tag pages. A nested custom tag can use the cfassociate tag to return values to the calling tag's ThisTag scope.

Request

Variables that are available to all pages, including custom tags and nested custom tags, that are processed in response to an HTTP request. Used to hold data that must be available for the duration of one HTTP request.

CGI

Environment variables identifying the context in which a page was requested. The variables available depend on the browser and server software.

Cookie

Variables maintained in a user's browser as cookies.

Client

Variables that are associated with one client. Client variables let you maintain state as a user moves from page to page in an application and are available across browser sessions.

Session

Variables that are associated with one client and persist only as long as the client maintains a session.

Application

Variables that are associated with one, named, application on a server. The Application.cfc initialization code or the cfapplication tag name attribute specifies the application name.

Server

Variables that are associated with the current ColdFusion server. This scope lets you define variables that are available to all your ColdFusion pages, across multiple applications.

Flash

Variables sent by an Adobe Flash movie to ColdFusion and returned by ColdFusion to the movie.

Arguments

Variables passed in a call to a user-defined function or ColdFusion component method.

This

Variables that are declared inside a ColdFusion component or in a cffunction tag that is not part of a ColdFusion component.

function local

Variables that are declared in a user-defined function and exist only while the function executes.