What is supported in CFScript

Tag equivalents in CFScript

Tag

CFScript equivalent

cfabort

abort

cfbreak

break. CFScript also has a continue statement that has no equivalent CFML tag.

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="">. You cannot use <cfimport taglib=""> in cfscript.

cfinclude

include

cfinterface

interface

cflocation

location

cflock

lock

cflog

writelog

cfloop

  • Indexed cfloop: for loops

  • Conditional cfloop: while loops and do while loops

  • Structure cfloop: for in loop. (There is no equivalent for queries, lists, or objects.)

cfobject

createobject, new

cfoutput

writeoutput

cfparam

param

cfprocessingdirective

pageencoding

cfproperty

property

cfrethrow

rethrow

cfreturn

return

cfsavecontent

savecontent

cfset

var

var x =1; is equivalent of <cfset var x =1>

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

Example

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>

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:

break

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.