Update:
The original wording of this was unnecessarily antagonistic towards one of my readers. I have reworded, and I apologise unreservedly for that.A question came up the other day, regarding why one might specify the output setting on a CFScript-based function. All things being equal: this is seldom necessary, but the behaviour does change slightly if one explicitly sets it to
false
.To demonstrate:
component {
function outputNotSpecififed(){
include "incWithOwnOutput.cfm";
include "incWithOutOwnOutput.cfm";
}
function outputIsTrue() output=true {
include "incWithOwnOutput.cfm";
include "incWithOutOwnOutput.cfm";
}
function outputIsFalse() output=false {
include "incWithOwnOutput.cfm";
include "incWithOutOwnOutput.cfm";
}
}
With <cfoutput>:<br>
<cfset message="kia ora te ao">
<cfoutput>#message#</cfoutput><br>
Without <cfoutput>:<br>
<cfset message="kia ora te ao">
#message#<br>
Yield:
Output not specified:
With <cfoutput>:
kia ora te ao
Without <cfoutput>:
#message#
Output true:
With <cfoutput>:
kia ora te ao
Without <cfoutput>:
#message#
Output false:
So... yes there is a point to specifying output on a CFScript function. But it's only an edge case. Still: perhaps worth remembering.
--
Adam