User-defined functions (UDFs) let you create application elements in a format in which you pass in arguments and get a return a value. You can define UDFs using CFScript or the cffunction
tag. The two techniques have several differences, of which the following are the most important:
cffunction
tag, your function can include CFML tags.
You use UDFs in your application pages as you use standard ColdFusion functions. You can create a function for an algorithm or procedure that you use frequently, and then use the function wherever you need the procedure.
As with custom tags, you can easily distribute UDFs to others. For example, the Common Function Library Project at http://www.cflib.org is an open-source collection of CFML user-defined functions.
To call a UDF, use it as you would a ColdFusion built-in function. For example, the following line calls the function MyFunct and passes it two arguments:
<cfset returnValue=MyFunct(Arg1, Arg2)>
Typical uses of UDFs include, but are not limited to, the following:
Consider using UDFs in the following circumstances:
If you can create either a UDF or a custom CFML tag for a particular purpose, first consider creating a UDF because invoking it requires less system overhead than using a custom tag.
For more information on user-defined functions, see Chapter 9, "Writing and Calling User-Defined Functions".