Cal*_*ist 6 variables coldfusion dynamic
快乐星期五全部,
一直试图破解这几天.我要做的是使用固定字符串和变量(数字)的组合动态创建变量.
我正在查询数据库以获取代理列表,然后我想为每个代理创建单独的变量以保存不同的统计信息.我希望在循环中获取当前的stat(即创建的票证),然后将每个代理ID添加到结尾.
我正在调用这个第一个stat GC
,Get Created
因为一个示例变量,当前的stat和代理ID就是这样的GC1
.
我用谷歌搜索并阅读了许多不同的提示,指南等,但其中大部分都已过时(2002年!)或似乎基于查询和数组.我正在寻找更简单的东西(或者我相信).
我知道我应该能够使用(AID =代理ID)的内容动态创建变量:
<cfset "GC#AID#" = getCreated.RecordCount>
Run Code Online (Sandbox Code Playgroud)
现在,我没有错误,所以我假设变量正在被正确创建,但是当我去输出变量是我真正陷入问题的地方(或者我认为).
无论我尝试多少种不同的方式,输出总是如此GC1
.相反,我希望显示变量的值,而不是变量名称.
我知道我不想使用评估,我在其他网站上看到过很多关于使用struct表示法的例子,但是这些例子总是与查询结合使用.
我觉得我必须在这里找到一些非常简单的东西.有关如何在查询上下文之外输出动态创建的变量的值的任何想法?
很抱歉长篇大论的解释,只是想确保我很清楚.
如果有任何澄清有帮助,请告诉我.
如果相关,我正在使用ColdFusion 10.
提前致谢!
编辑1
这就是我目前对输出代码的看法:
<cfset test = "GC#variables.AID#">
Test: <cfoutput>#test#</cfoutput>
Run Code Online (Sandbox Code Playgroud)
我意识到这可能不合时宜.
Jas*_*ean 15
一种选择:
设置动态变量名称:
<cfset variables["GC" & AID] = "Testing" />
Run Code Online (Sandbox Code Playgroud)
输出动态变量名称的值:
<cfoutput>#variables["GC" & AID]#</cfoutput>
Run Code Online (Sandbox Code Playgroud)
另外一个选项:
设置动态变量名称:
<cfset variables["GC#AID#"] = "Testing" />
Run Code Online (Sandbox Code Playgroud)
输出动态变量名称的值:
<cfoutput>#variables["GC#AID#"]#</cfoutput>
Run Code Online (Sandbox Code Playgroud)