我对两种不同的语法风格感到困惑,并想知道哪一种被认为是ColdFusion的一种优秀编程实践.
在第一个示例中,returnvariable不使用双引号.CFSET变量也不是:
<cfinvoke component="#UserObj#" method="MyMethod"
username="#MyUserName#"
Returnvariable= ReturnVar><!--- No double quotes --->
<!--- No double quotes & no pound signs --->
<cfset session.userright = ReturnVar>
Run Code Online (Sandbox Code Playgroud)
在第二个例子中,代码被使用为双引号Returnvariable和用于CFSET.第一个设置为ReturnVar,而另一个设置为双引号和井号"#RetunsVar#"
<cfinvoke component="#UserObj#" method="MyMethod"
username="#MyUserName#"
Returnvariable= "ReturnVar"><!--- using double quotes --->
<!--- using double quotes & pound signs --->
<cfset session.userright = "#ReturnVar#">
Run Code Online (Sandbox Code Playgroud)
看起来我可以使用这两种风格,哪一种都可以使用?
如果您正在寻找良好的编程习惯,您应该从不使用开始 cfinvoke
如果您使用的是ColdFusion 9或更高版本,则可以使用以下语法.
<cfset userObj = new UserObj()>
<cfset returnVar = userObj.MyMethod(MyUserName)>
<cfset session.userright = returnVar>
Run Code Online (Sandbox Code Playgroud)
或者,您可以通过消除变量的额外设置来进一步简化
<cfset userObj = new UserObj()>
<cfset session.userright = userObj.MyMethod(MyUserName)>
Run Code Online (Sandbox Code Playgroud)
无需使用"或#设置变量.我也建议不要使用任何类型的变量命名retVar或returnVar或somethingThatDoesn'tExplainWhatItIs
| 归档时间: |
|
| 查看次数: |
105 次 |
| 最近记录: |