排列
在 ColdFusion 8 中添加了使用
cfloop
直接使用array
对象的功能。
考虑这个数组;
<cfset aFoo = [
"one"
, "two"
, "three"
, "four"
] />
标记语法
ColdFusion 8 通过电流
使用属性 index
本身。
参数
属性 | 是否必需 | 默认 | 描述 |
---|---|---|---|
array |
true |
一个数组对象。必须评估变量(用##包装) | |
index |
true |
数组的当前元素。 |
<cfoutput>
<cfloop array="#aFoo#" index="x">
<li>#x#</li>
</cfloop>
</cfoutput>
生成的 HTML
这也将在每行 HTML 之间有换行符。
<li>one</li>
<li>two</li>
<li>three</li>
<li>four</li>
ColdFusion 2016 通过当前
属性
item
在 Coldfusion 2016 中改变了cfloop
的行为。
使用属性 item
代替 index
或者除了 index
之外。
参数
属性 | 是否必需 | 默认 | 描述 |
---|---|---|---|
array |
true |
一个数组对象。必须评估变量(用##包装) | |
item |
true |
数组的当前元素。 | |
index |
false |
数组的当前索引。 |
<cfoutput>
<cfloop array="#aFoo#" item="x" index="y">
<li>#x# | #y#</li>
</cfloop>
</cfoutput>
生成的 HTML
这也将在每行 HTML 之间有换行符。
<li>one | 1</li>
<li>two | 2</li>
<li>three | 3</li>
<li>four | 4</li>
CFSCRIPT
在 ColdFusion 8 之前
<cfscript>
for (i = 1; x LTE arrayLen(aFoo); i = i + 1) {
writeOutput("<li>" & aFoo[i] & "</li>");
}
</cfscript>
ColdFusion 8 通过电流
<cfscript>
for (i = 1; i <= arrayLen(aFoo); i = i++) {
writeOutput("<li>" & aFoo[i] & "</li>");
}
</cfscript>
ColdFusion 9 通过电流
使用
FOR IN
语法,x 是当前数组元素,而不是数组索引。
<cfscript>
for (x in aFoo) {
writeOutput("<li>" & x & "</li>");
}
</cfscript>
ColdFusion 11 通过电流
cfscript 函数
cfloop
不支持array
。
生成的 HTML
请注意,cfscript
输出全部在一行上。
<li>one</li><li>two</li><li>three</li><li>four</li>