判斷對象是否存在,若成立說明存在 <#if blockObjList ??></#if>
<#if blockObjList ??> <#else> </#if>
判斷知否和某一個值相等(先判斷是否存在,在判斷相等,如果該指定的參數不存在還比較相等的話就回出錯) <#if componentId ?? && componentId==1></#if>
list循環(循環遍歷list並給遍歷的對象取別名attribute以方便後面對象調用),if_exists在調用一個變量需要先判斷是否爲空不然爲空時會出錯,_index爲取出行號索引從0開始,?size可以判斷list大小 <#list lockObj.components as attribute> ${attribute.contenturl?if_exists} ${attribute_index} </#list> {lockObj.components ?size}
ftl.map
<#list Map?keys as s>
${Map[s]}
</#list>
變量與指定值相加減,需要先判斷該變量是否爲數字類型,?number 然後轉換爲數字類型再做相減運算(變量number與指定的2相減) ${blockWidth?number-2}
日期轉換
時間格式化的方法代碼
最好加上 判斷下c時候存在
<#if c??>
${c.addtime?string("yyyy-MM-dd HH:mm:ss")
</#if>
判斷長度並截取代碼
<#if c.titleH1??>
<#if c.titleH1?length lt 33>
${c.titleH1}
Ftl變量轉換代碼
?number轉爲數字
?c轉爲字符串
?string轉爲字符串
?currency(貨幣)
?percent(百分比)
trim 刪除字符串首尾空格 ${“ String ”?trim} 結果爲String
split使用指定的分隔符將一個字符串拆分爲一組字符串
<#list “This|is|split”?split(“|”) as s>
${s}
</#list>
${“strabg”?replace(“ab”,”in”)} 結果爲string
${“string”?contains(“ing”)?string} 結果爲true
注意:布爾值必須轉換爲字符串才能輸出
${“string”?index_of(“in”) 結果爲3
${“string”?index_of(“ab”) 結果爲-1
length返回字符串的長度 ${“string”?length}結果爲6
lower_case將字符串轉爲小寫
${“STRING”?lower_case}à結果爲string
upper_case將字符串轉爲大寫
${“string”?upper_case}à結果爲STRING
ends_with 判斷某個字符串是否由某個子串結尾,返回布爾值。
${“string”?ends_with(“ing”)?string} 返回結果爲true
注意:布爾值必須轉換爲字符串才能輸出
html 用於將字符串中的<、>、&和“替換爲對應得<>":&
index_of(substring,start)在字符串中查找某個子串,返回找到子串的第一個字符的索引,如果沒有找到子串,則返回-1。
Start參數用於指定從字符串的那個索引處開始搜索,start爲數字值。
如果start大於字符串長度,則start取值等於字符串長度,如果start小於0, 則start取值爲
${‘str’?substring(0)}à結果爲str
${‘str’?substring(0,1)}à結果爲s
2.cap_first 將字符串中的第一個單詞的首字母變爲大寫。
${‘str’?cap_first}à結果爲Str
3.uncap_first將字符串中的第一個單詞的首字母變爲小寫。
${‘Str’?cap_first}à結果爲str
4.capitalize將字符串中的所有單詞的首字母變爲大寫
${‘str’? capitalize}à結果爲STR
date,time,datetime將字符串轉換爲日期
例如:
<#assign date1=”2009-10-12”?date(“yyyy-MM-dd”)>
<#assign date2=”9:28:20”?time(“HH:mm:ss”)>
<#assign date3=” 2009-10-12 9:28:20”?time(“HH:mm:ss”)>
${date1}à結果爲2009-10-12
${date2}à結果爲9:28:20
${date3}à結果爲2009-10-12 9:28:20
?number轉爲數字
?c轉爲字符串
?string轉爲字符串
?currency(貨幣)
?percent(百分比)
trim 刪除字符串首尾空格 ${“ String ”?trim} 結果爲String
split使用指定的分隔符將一個字符串拆分爲一組字符串
<#list “This|is|split”?split(“|”) as s>
${s}
</#list>
${“strabg”?replace(“ab”,”in”)} 結果爲string
${“string”?contains(“ing”)?string} 結果爲true
注意:布爾值必須轉換爲字符串才能輸出
${“string”?index_of(“in”) 結果爲3
${“string”?index_of(“ab”) 結果爲-1
length返回字符串的長度 ${“string”?length}結果爲6
lower_case將字符串轉爲小寫
${“STRING”?lower_case}à結果爲string
upper_case將字符串轉爲大寫
${“string”?upper_case}à結果爲STRING
ends_with 判斷某個字符串是否由某個子串結尾,返回布爾值。
${“string”?ends_with(“ing”)?string} 返回結果爲true
注意:布爾值必須轉換爲字符串才能輸出
html 用於將字符串中的<、>、&和“替換爲對應得<>":&
index_of(substring,start)在字符串中查找某個子串,返回找到子串的第一個字符的索引,如果沒有找到子串,則返回-1。
Start參數用於指定從字符串的那個索引處開始搜索,start爲數字值。
如果start大於字符串長度,則start取值等於字符串長度,如果start小於0, 則start取值爲
${‘str’?substring(0)}à結果爲str
${‘str’?substring(0,1)}à結果爲s
2.cap_first 將字符串中的第一個單詞的首字母變爲大寫。
${‘str’?cap_first}à結果爲Str
3.uncap_first將字符串中的第一個單詞的首字母變爲小寫。
${‘Str’?cap_first}à結果爲str
4.capitalize將字符串中的所有單詞的首字母變爲大寫
${‘str’? capitalize}à結果爲STR
date,time,datetime將字符串轉換爲日期
例如:
<#assign date1=”2009-10-12”?date(“yyyy-MM-dd”)>
<#assign date2=”9:28:20”?time(“HH:mm:ss”)>
<#assign date3=” 2009-10-12 9:28:20”?time(“HH:mm:ss”)>
${date1}à結果爲2009-10-12
${date2}à結果爲9:28:20
${date3}à結果爲2009-10-12 9:28:20
宏定義hash內置函數代碼
Hash的內置函數
1.hash?keys 返回hash裏的所有key,返回結果爲sequence
2.hash?values 返回hash裏的所有value,返回結果爲sequence
例如:
<#assign user={“name”:“hailang”, “sex”:“man”}>
<#assign keys=user?keys>
<#list keys as key>
${key}=${user[key]}
</#list>
Hash的內置函數
1. hash?keys 返回hash裏的所有key,返回結果爲sequence
2.hash?values 返回hash裏的所有value,返回結果爲sequence
例如:
<#assign user={“name”:“hailang”, “sex”:“man”}>
<#assign keys=user?keys>
<#list keys as key>
${key}=${user[key]}
</#list>
參考文獻 http://blog.csdn.net/hbhgjiangkun/article/details/7283634