ColdFusion - Getting Started
2019-01-01
- 不能用数字开始
- 不能包含空格
- 不能使用除去下滑线以外的特殊符号
- 大小写不敏感
标记函数和变量的时候需要用到井号 输入两个连续的井号(##)就表示一个单个井号(#)
<cfloop index="parameter name" from="beginning value" to="ending value" step="increment" charset "charset to read in a file"> HTML or CFML code …… </cfloop>
<cfloop from="1" to="10" step="2" index="i"> <cfoutput> <li>#i#</li> </cfoutput> </cfloop>
<cfbreak>
<cfset test="aaa,bbb,ccc,ddd"> <cfloop list="#test#" index="i"> <cfoutput> #i# </cfoutput> </cfloop>
在 loop 中使用其他列表的时候需要加上对应的井号 #test#
希望输出列表内容的时候直接使用 index
参数就可以了
另一种可以获取到 index 的循环模式:
<cfset list="Partner,Response Date,Response Status" /> <cfloop from="1" to="#listLen(list)#" index="i"> <cfoutput> listGetAt(list, i) </cfoutput> </cfloop>
<cfloop query = "query name" startRow = "row number" endRow = "row number"> </cfloop>
从 cc_TEST 表中搜索前十个数据, 放到 TEST 的 <cfQuery>
之中
几个需要注意的地方:
- 循环里面直接使用对应的列名就可以
- 在
<cfloop query="TEST">
的 query 属性中不需要添加井号 - 在
<cfloop>
内部语句需要使用<cfoutput>
进行转换,<cfoutput>
可以放在外层以减少使用次数
<cfquery name="query" datasource="cc_query" result="result"> SELECT TOP(10) * FROM SITE </cfquery> <cfdump var="#query#" /> <cfloop query="query"> <cfoutput> #query.CurrentRow# #ADMIN# </cfoutput> </cfloop> <cfoutput> #result.sql# </cfoutput>
此外还可以直接使用 <cfoutput>
的 Query 属性来输出
同样直接使用对应的列名
<cfoutput query="query"> #ADMIN# </cfoutput>
<cfset myBooks=StructNew()> <cfset myVariable=StructInsert(myBooks,"ColdFusion","ColdFusion MX Bible")> <cfset myVariable=StructInsert(myBooks,"HTML","HTML Visual QuickStart")> <cfset myVariable=StructInsert(myBooks,"XML","Inside XML")> <cfloop collection="#myBooks#" item="subject"> <cfoutput> <b>#subject#:</b> #StructFind(myBooks,subject)#<br /> </cfoutput> </cfloop>
显示结果:
HTML: HTML Visual QuickStart ColdFusion: ColdFusion MX Bible XML: Inside XML
- query
Required Query that controls the loop.
- startRow
- endRow
http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSc3ff6d0ea77859461172e0811cbec22c24-7fae.html
<cfset names=ArrayNew(2)> <cfset names[1][1]="test"> <cfset names[1][2]="test123"> <cfset names[2][1]="test4343"> <cfset names[2][2]="test1235454"> <cfset names[3][1]="43"> <cfset names[3][2]="123">
ArrayNew()
表示建立一位数组
ArrayNew(X)
表示建立 X 维数组, 随后赋值的数据必须有 X 个 index
<cfset names=ArrayNew(3)> <cfset names[1][1][1]="test"> <cfset names[1][2][2]="test123"> <cfset names[3][2][5]="43"> <cfset names[4][2][4]="42">
- 使用
<cfdump>
标签可以查看对应的变量的数据
<cfdump var="#names#">
<cfif (#i#+#j# IS 10)> do sth…… <cfelse> do sth else…… </cfif>
<cfswitch expression="#Trim(Department)#"> <cfcase value="Sales"> #FirstName# #LastName# is in <b>sales</b> </cfcase> <cfcase value="Accounting"> #FirstName# #LastName# is in <b>accounting</b> </cfcase> <cfcase value="Administration"> #FirstName# #LastName# is in <b>administration</b> </cfcase> <cfdefaultcase> #FirstName# #LastName# is not in Sales, Accounting, or Administration. </cfdefaultcase> </cfswitch>
switch(fruit) { case "apple": WriteOutput("I like Apples"); break; case "orange": WriteOutput("I like Oranges"); break; default: WriteOutput("I like fruit"); }
- IS/EQ: equal to
- IS NOT/NEQ: not equal to
- GT: greater than, bigger than
- GTE: greater then or equal to
- LT: less than
- LTE: less than or equal to
- AND
- PR
- XOR: 异或, 其一为 true 而不能同时为 true
- EQV: 等价, 两个条件相同时返回 true
- IMP: 蕴含, 第一个条件为 true, 第二个条件为 false 返回 false
- NOT
例如使用单引号
<cfset URL.customGroupSitesExtraSQL = customGroupSitesExtraSQL & "'#SiteID#'"/>
MOD or %
注意余数运算的时候小数部分会被忽略:
11.7 MOD 4 = 3
关于本文
文章标题 | ColdFusion - Getting Started |
发布日期 | 2019-01-01 |
文章分类 | Tech |
相关标签 | #ColdFusion |
留言板
PLACE_HOLDER
PLACE_HOLDER
PLACE_HOLDER
PLACE_HOLDER
PLACE_HOLDER