2011-01-06 60 views
4

如果我使用的ColdFusion忽略未定义的变量

<cfoutput>#somevariable#</cfoutput> 

somevariable没有定义我得到一个错误,我怎么能防止错误occourring? 有没有一个简单的方法来实现一个条件,不需要一堆额外的行?

回答

11
<cfparam name="somevariable" default="" /> 

如果你在cf 9上,你可以使用三元操作,但cfparam更“最佳实践”。

#isDefined("somevariable") ? somevariable : 'default string'# 
+0

真棒,谢谢! – Daniel 2011-01-06 21:09:36

1

可以测试变量

<cfoutput> 
    <cfif isDefined("somevariable")> 
     #somevariable# 
    <cfelse> 
     handle default scenario here 
    </cfif> 
</cfoutput> 

或者你可以使用内嵌条件

<cfoutput> 
    #IIF(isDefined("somevariable"),de(somevariable),de(""))# 
</cfoutput>