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 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.
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. |