Skip to Content
Programming ColdFusion
book

Programming ColdFusion

by Rob Brooks-Bilson
August 2001
Intermediate to advanced
976 pages
38h 8m
English
O'Reilly Media, Inc.
Content preview from Programming ColdFusion

User-Defined Functions

In ColdFusion 5.0, you now have the ability to create user-defined functions (UDFs) that can be called inline, just like other ColdFusion functions. The premise behind UDFs is to allow you to extend ColdFusion’s core set of functions with custom ones that encapsulate programming tasks not currently addressed by the language. For example, there is no CFML function for calculating the mean (average value) of a delimited list of numeric values. Rather than writing code that uses multiple functions each time you want to calculate the mean for a given list of numbers, you can create a UDF that can be called inline as often as you want in your template.

Before we get into the specifics of defining and calling UDFs, you should be aware of a few rules related to their use:

  • UDFs can be used anywhere you use a normal CFML function: within a CFOUTPUT block, within CFSET tags, in any tag attributes, and within CFScript code.

  • UDFs can be called recursively, which means that a UDF can call itself.

  • UDFs can call other UDFs.

  • Because UDFs are written using CFScript, they can’t contain any CFML tags.

  • Although it’s possible to assign a UDF to a variable, it’s generally not advisable to do so. This is especially true in the case of persistent variables (session, application, server) due to the locking issues this presents.

Defining Custom Functions

All UDFs are defined within a CFSCRIPT block and follow the same basic format. You can define as many functions as you wish ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Programming ColdFusion MX, 2nd Edition

Programming ColdFusion MX, 2nd Edition

Rob Brooks-Bilson
Adobe ColdFusion 8 Web Application Construction Kit, Volume 3: Advanced Application Development

Adobe ColdFusion 8 Web Application Construction Kit, Volume 3: Advanced Application Development

Ben Forta, Charlie Arehart, Jeffrey Bouley, Jeff Tapper, Matt Tatam, Raymond Camden, Robi Sen, Sarge Sargent

Publisher Resources

ISBN: 1565926986Catalog PageErrata