如何确保cfobject变量是函数的本地变量?

时间:2014-03-06 08:30:27

标签: coldfusion

假设常规.cfm文件中有以下代码,一个CFC:

  

<cffunction name="myFunction"> <cfobject type="java" action="create" class="path.to.my.java.class" name="myJavaVariable"> </cffunction>

创建对象的范围是什么?我感觉它的仅限于功能范围。如果是这样,如何让它成为本地的?以下是否有效?

  

<cfset var myJavaVariable = ""> <cfobject ... name="myJavaVariable">

编辑: 我忘了说我在Coldfusion MX 7下,因为它确实阻止了网络上发现的一些有用的解决方案。

我确实找到了一种解决方法,其中一个创建了一个虚假的本地范围(<cfset var local = StructNew()>)。它甚至可以用于此类标记,因为您可以将返回变量设置为local.someVar

1 个答案:

答案 0 :(得分:9)

我会问你为什么要使用<cfobject>,而不是更明显的简单任务:

var myJavaVariable = createObject("java", "path.to.my.java.class");

无论如何,这不是更自然的代码吗?