使用 ColdFusion,如何使用 listFind 复制比较语句?
Using ColdFusion, how do I replicate a compare statement with listFind?
我正在设置一些东西以允许我伪装成我系统中的另一个用户。但是,我想使用 listFind 而不是 compare() 方法。
<cfif compare(session.userName, "userOne") EQ 0>
<cfset #session.userName# = "userThree">
</cfif>
在上面的语句中,我试图使其符合 listFind,如果 userOne 当前已登录,则将 session.userName 设置为 userThree。但是,我遇到了麻烦。
到目前为止我有什么...
<cfif #ListFind("userOne, UserTwo")#>
<cfset #session.userName# = "userThree">
</cfif>
您需要为 ListFind 提供两个独立的参数。目前您正在提供一个字符串。该列表也是第一个参数,搜索的字符串是第二个。
<cfif ListFind("userOne", session.userName)>
<cfset session.userName = "userThree">
</cfif>
附带说明一下,只有 string interpolation 才需要散列。换句话说,仅当您希望对 variable/expression 求值并将其插入字符串时。
我正在设置一些东西以允许我伪装成我系统中的另一个用户。但是,我想使用 listFind 而不是 compare() 方法。
<cfif compare(session.userName, "userOne") EQ 0>
<cfset #session.userName# = "userThree">
</cfif>
在上面的语句中,我试图使其符合 listFind,如果 userOne 当前已登录,则将 session.userName 设置为 userThree。但是,我遇到了麻烦。
到目前为止我有什么...
<cfif #ListFind("userOne, UserTwo")#>
<cfset #session.userName# = "userThree">
</cfif>
您需要为 ListFind 提供两个独立的参数。目前您正在提供一个字符串。该列表也是第一个参数,搜索的字符串是第二个。
<cfif ListFind("userOne", session.userName)>
<cfset session.userName = "userThree">
</cfif>
附带说明一下,只有 string interpolation 才需要散列。换句话说,仅当您希望对 variable/expression 求值并将其插入字符串时。