Coldfusion 8:IsDefined('URL.variable')并且不是“”?

时间:2010-11-09 17:38:42

标签: coldfusion coldfusion-8

我试图找出url变量是否存在,如果不存在,请确保它不是空的。

这不起作用:

<cfif IsDefined('URL.affiliateId') and is not "">
    //
</cfif>

5 个答案:

答案 0 :(得分:15)

<cfif structKeyExists(url, 'affiliateID') and trim(url.affiliateID) neq "">...</cfif>

答案 1 :(得分:4)

您可以使用&lt; cfparam&gt;来简化逻辑。确保URL变量始终存在。然后,您只需要1,而不是2个条件。

<cfparam name="URL.affiliateId" type="string" default="" />

<cfif trim( URL.affiliateId ) is not "">
     do stuff here
</cfif>

答案 2 :(得分:1)

忽略大多数空格

<cfif IsDefined('URL.affiliateId') and len(trim(URL.affiliateId))>
    value is defined and not empty
</cfif>

......或者

<cfif IsDefined('URL.affiliateId') and len(trim(URL.affiliateId)) gt 0>
    value is defined and not empty
</cfif>

答案 3 :(得分:0)

<cfif IsDefined('URL.affiliateId') and URL.affiliateId neq "">
    //
</cfif>

答案 4 :(得分:0)

我将总结答案并提供我的版本:

<cfparam name="URL.affiliateId" type="string" default="" />

<cfif len(trim(URL.affiliateId))>
     ...do something with the affiliate...
</cfif>

您不需要structKeyExists或isDefined,最好避免使用它们。此外,你不需要'len()'之后的'大于零'部分。