break
Tag equivalents in CFScript
With ColdFusion 11, you can use all tags inside cfscript.
The following table lists all the tags that supported script-style syntax in ColdFusion.
Tag | CFScript equivalent |
---|---|
cfabort | abort |
cfbreak | break. |
cfcase | case |
cfcatch | catch |
cfcomponent | component |
cfcontinue | continue |
cfcookie | Direct assignment of Cookie scope memory-only variables. You cannot use direct assignment to set persistent cookies that are stored on the user system. |
cfdefaultcase | default |
cfdirectory Only for <Cfdirectory action=list/> |
The directory functions DirectoryCreate, DirectoryDelete, DirectoryList, and DirectoryRename. |
cfdump | writedump |
cfelse | else |
cfelseif | elseif |
cfexit | exit |
cffile | The file functions FileDelete, FileSeek, FileSkipBytes, and FileWriteLine. |
cffinally | finally |
cffunction | function |
cfimage | The Image functions. |
cfif | if |
cfimport | import Import in cfscript is only equivalent of <cfimport path="">. |
cfinclude | include |
cfinterface | interface |
cflocation | location |
cflock | lock |
cflog | writelog |
cfloop |
|
cfobject | createobject, new |
cfoutput | writeoutput |
cfparam | param |
cfprocessingdirective | pageencoding |
cfproperty | property |
cfrethrow | rethrow |
cfreturn | return |
cfsavecontent | savecontent |
cfset | Assignment statement x =1; is equivalent of <cfset x =1> local.x=1; is equivalent of <cfset var x =1> |
cfswitch | switch |
cfthread | thread |
cfthrow | throw |
cftrace | trace |
cftransaction | transaction |
cftry | try |
Examples of script-style syntax
The following example loops through a query in CFScript:
... <cfscript> // Loop through the qGetEmails RecordSet for (x = 1; x <= qGetEmails.RecordCount; x=x+1) { This_id = qGetEmails.Emails_id[x]; This_Subject = qGetEmails.Subject[x]; This_RecFrom = qGetEmails.RecFrom[x]; This_SentTo = qGetEmails.SentTo[x]; This_dReceived = qGetEmails.dReceived[x]; This_Body = qGetEmails.Body[x]; ... // More code goes here. } </cfscript>
The following examples demonstrate the differences in syntax between tag-style and script-style programming.
cflocation example
Tag-style
<cflocation url = "URL" addToken = "yes|no" statusCode = "300|301|302|303|304|305|307">
Script-style
<cfscript> cflocation(url = "URL", addToken = "yes|no", statusCode = "300|301|302|303|304|305|307") </cfscript>
cfajaxproxy example
Tag-style
<cfajaxproxy cfc = "CFC name" jsclassname = "JavaScript proxy class name"> OR <cfajaxproxy bind = "bind expression" onError = "JavaScript function name" onSuccess = "JavaScript function name">
Script-style
<cfscript> cfajaxproxy(cfc = "CFC name", jsclassname = "JavaScript proxy class name") </cfscript> OR <cfscript> cfajaxproxy (bind = "bind expression", onError = "JavaScript function name", onSuccess = "JavaScript function name") </cfscript>
cfpdf example
The following example shows the differences between tag-style and script-style syntax when there are child tags present.
Tag-style
<cfpdf action="merge" destination=expandPath(’./MyPDFMerged.pdf’) overwrite=true> <cfpdfparam source=expandPath(’./MyPDF1.pdf’)> <cfpdfparam source=expandPath(’./MyPDF2.pdf’)> </cfpdf>
Script-style
cfpdf(action="merge", destination=expandPath(’./MyPDFMerged.pdf’), overwrite=true) { cfpdfparam(source=expandPath(’./MyPDF1.pdf’)); cfpdfparam(source=expandPath(’./MyPDF2.pdf’)); };
Reserved words
In addition to the names of ColdFusion functions and words reserved by ColdFusion expressions (such as NOT, AND, IS, and so on), the following words are reserved in CFScript. Do not use these words as variables or identifiers in your scripting code:
|
do |
import |
var |
---|---|---|---|
case |
else |
in |
while |
catch |
finally |
interface |
|
try |
for |
pageencoding |
|
continue |
function |
return |
|
default |
if |
switch |
|
Script functions
For a list of script functions, see Script Functions added in ColdFusion 9.