我正在处理一些遗留代码,并且我一直在评估具有多个条件的 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,则它在应该显示第二个语句中的文本时却显示第一个语句中的文本。
最佳答案
要仅在满足条件1
时显示“显示管理文本”,您可以像这样:
<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>
注意:我声明“说话”变量只是为了更好的可读性。
关于ColdFusion if 语句具有多个条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34232066/