Number signs (#) have a special meaning in CFML. When the ColdFusion server encounters number signs in CFML text, such as the text in a cfoutput
tag body, it checks to see if the text between the number signs is either a variable or a function.
Tip: Number signs are also called pound signs.
Is so, it replaces the text and surrounding number signs with the variable value or the result of the function. Otherwise, ColdFusion generates an error.
For example, to output the current value of a variable named Form.MyFormVariable
, you delimit (surround) the variable name with number signs:
<cfoutput>Value is #Form.MyFormVariable#</cfoutput>
In this example, the variable Form.MyFormVariable
is replaced with the value assigned to it.
Follow these guidelines when using number signs:
1 + 2
in number signs. Although this is allowed in a cfoutput block, such as <cfoutput>One plus one is #1 + 1#</cfoutput>, doing so mixes logic and presentation.
The following sections provide more details on how to use number signs in CFML. For a description of using number signs to create variable names, see Using number signs to construct a variable name in assignments.