我正在处理一些遗留代码,而且我一直在评估具有多个条件的ColdFusion if语句。我要做的是:
<cfif condtion1 eq'yes'>
Display admin text
</cfif>
<cfif condition2 eq'yes' && condition1 eq'no'>
display non-admin text
</cfif>
<cfif condition2 eq'yes' && condition1 eq'yes'>
display non-admin text
</cfif>
如果第一个语句为true,则它正常运行。 如果第二个陈述为真,那么如果功能正常。
如果第三个语句为true,它将显示第一个语句中的文本,它应显示第二个语句中的文本。
答案 0 :(得分:2)
显示&#34;显示管理文字&#34;只有满足condition1
,你才能这样:
<cfset isAdmin = condition1>
<cfset isUser = condition2>
<cfif isAdmin and (not isUser)>
Display admin text
<cfelse>
display non-admin text
</cfif>
澄清一下:
<cfset isAdmin = condition1>
<cfset isUser = condition2>
<cfif isAdmin and isUser>
I'm admin AND user.
<cfelseif isAdmin>
I'm admin BUT NOT user.
<cfelseif isUser>
I'm NOT admin, BUT user.
</cfif>
注意:我宣布&#34;说&#34;变量只是为了更好的可读性。
答案 1 :(得分:1)
如Leigh在评论中提到的那样,如果condition1 eq'是',那么语句1和3都是正确的。
如果在所有情况下只希望其中一个if块为真,则在第一个if语句中添加“condition2 neq'yes'”。