Provides the following information to ColdFusion about how to process the current page:
Specifies whether to remove excess whitespace character from ColdFusion generated content in the tag body.
Identifies the character encoding (character set) of the page contents.
Data output tags, Page processing tags
<cfprocessingdirective
pageencoding = "page-encoding literal string"/>
OR
<cfprocessingdirective
pageEncoding = "page-encoding literal string"
suppressWhiteSpace = "yes|no">
CFML tags
</cfprocessingdirective>
cfcol, cfcontent, cfoutput, cfsetting, cfsilent, cftable; Developing
Globalized Applications in the Developing ColdFusion Applications
ColdFusion MX:
Changed suppresswhitespace attribute
value behavior: you can specify the suppresswhitespace attribute
value as a string variable. (ColdFusion 5 supported setting it only
as a constant.)
Added the pageEncoding attribute.
Attribute |
Req/Opt |
Default |
Description |
|---|---|---|---|
|
Optional |
Character encoding identified by the page byte order mark, if any; otherwise, system default encoding |
A string literal; cannot be a variable.
Identifies the character encoding of the current CFML page. This
attribute affects the entire page, not just the The following list includes commonly used values:
For more information on character encodings, see www.w3.org/International/O-charset.html. |
|
Optional |
Boolean; whether to suppress white space
characters within the |
The cfprocssingdirective tag
has limitations that depend on the attribute you use. For this reason,
Adobe recommends that you include either the pageencoding or suppresswhitespace attribute
in a cfprocessingdirective tag, not both. To specify
both values, use separate tags.
In a ColdFusion component
(.cfc file), the cfprocessingdirective tag must
follow the cfcomponent tag.
If you use the pageEncoding attribute,
the following rules apply:
You must put the tag within
the first 4096 bytes of a page. It can be positioned after a cfsetting or cfsilent tag.
If you use the tag on a page that includes other pages by
using the cfinclude or cfmodule tags,
custom tag invocation, and so on, the tag has no effect on the included
pages.
You cannot embed the tag within conditional logic, because
the pageEncoding attribute is evaluated when ColdFusion
compiles a page (not when it executes the page). For example, the
following code has no effect at execution time, because the cfprocessingdirective tag
has already been evaluated:
<cfif dynEncoding is not "dynamic encoding is not possible">
<cfprocessingdirective pageencoding=#dynEncoding#>
</cfif>
If you have multiple cfprocessingdirective tags
in one page that specify the pageEncoding attribute,
they must all specify the same value; if not, ColdFusion throws
an error.
If you specify only the pageencoding attribute,
do not use a separate end tag.
ColdFusion accepts character encoding names that are supported by the Java platform. If an invalid name is specified, ColdFusion throws an InvalidEncodingSpecification exception.
If a page has a byte order mark (BOM), and a pageencoding attribute specifies
an encoding that differs from the BOM, ColdFusion generates an error.
The
following rules apply to the suppressWhiteSpace attribute:
You can specify the suppresswhitespace attribute
value as a constant or a variable. To use a variable: define the
variable (for example, whitespaceSetting), assign
it the value yes or no, and code a statement such as the following:
<!--- ColdFusion allows suppression option to be set at runtime ---> <cfprocessingdirective suppresswhitespace=#whitespaceSetting#> code to whose output the setting is applied </cfprocessingdirective>
The suppresswhitespace attribute only affects
code that you put between the <cfprocessingdirective> begin
tag and the </cfprocessingdirective> end
tag.
The following example shows the use of a nested cfprocessingdirective tag.
The outer tag suppresses unnecessary whitespace during computation
of a large table; the inner tag retains whitespace, to output a
preformatted table.
<cfprocessingdirective suppressWhiteSpace = "Yes">
<!--- CFML code --->
<cfprocessingdirective suppressWhiteSpace = "No">
<cfoutput>#table_data#
</cfoutput>
</cfprocessingdirective>
</cfprocessingdirective>
The following example
shows the use of the pageencoding attribute:
<cfprocessingdirective pageencoding = "shift_jis">