模板函數(shù)

2018-01-09 17:31 更新
當(dāng)我們使用MVC開發(fā)模式當(dāng)然少不了模板引擎,在本引擎中,您可以在模板引擎中使用函數(shù)來靈活的讓網(wǎng)頁多元化,現(xiàn)在我們來看看有哪些函數(shù):

  • 追加:append{}  演示:
    1. {append var='name' value='val' index='start'}
    2. 解釋:給特定name變量數(shù)組追加val值,如果index(數(shù)組索引)有值,則嘗試添加到index的下標(biāo)
  • 賦值:{assign}  演示:
    1. {assign var="name" value="val"}
    2. 解釋:給name變量名賦值val值
  • 循環(huán):{for}  演示:
    1. {for $foo=start to end}
    2. 解釋:從start開始一直循環(huán)到end結(jié)束for標(biāo)簽需要使用{/for}來閉合該函數(shù)
  • 遍歷:{foreach}  演示:
    1. {foreach $myarray as $key=>$val}
    2. 解釋:將遍歷$myarray數(shù)組變量,$key為循環(huán)的鍵,$val是循環(huán)的值,需要{/foreach}結(jié)尾
  • 條件:{if}{elseif}{else}  演示:
    1. {if $name == 'admin'}
    2. 解釋:判斷$name變量值是否等于admin本函數(shù)需要使用{/if}結(jié)尾使用{elseif 條件}反向判斷,使用{else}來反向執(zhí)行
  • 包含:{include}  演示:
    1. {include file='test.html'}
    2. 解釋:將test.html文件引用到本頁面
  • 解釋域:{literal}  演示:
    1. {literal}
    2. 解釋:當(dāng)文本處于{literal}與{/literal}之間,將不會(huì)被模板引擎所解釋,用于定義一些頁面上的CSS或javascript
  • 禁止緩存:{nocache}  演示:
    1. {nocache}
    2. 解釋:該函數(shù)可附著在其他函數(shù)使用也可以單獨(dú)使用,其作用是禁止緩存,已確保中間的內(nèi)容是最新的,如果單獨(dú)使用請使用{/nocache}閉合函數(shù)
  • 循環(huán):{while}  演示:
    1. {while $val > 0}
    2. 解釋:一直循環(huán)到條件不滿足才會(huì)中止,否則將一直循環(huán),需要使用{/while}閉合
  • 載入:{fetch}  演示:
    1. {fetch file='http://www.baidu.com' assign='txt'}
    2. 解釋:file參數(shù)可以是本地文件路徑或者是ftp文件也可以是http文件,如果assign不定義那么獲取的內(nèi)容將會(huì)直接輸出,否則內(nèi)容將會(huì)賦值給assign參數(shù)變量

以下為變量操作函數(shù):

  • 首字符大寫:capitalize  演示:
  • {$val|capitalize:true}
      解釋:將對$val變量的首個(gè)字符進(jìn)行大寫轉(zhuǎn)換,如果設(shè)置為false則是小寫
  • 連接字符串:cat  演示:
  • {$val|cat:"我是追加的字符"}
      解釋:將對$val變量尾部追加上cat設(shè)置的文本
  • 字符計(jì)數(shù):count_characters  演示:
  • {$val|count_characters:true}
      解釋:將統(tǒng)計(jì)$val的字符長度,如果設(shè)置為false則不計(jì)算空格,否則將會(huì)計(jì)算空格,默認(rèn)為false
  • 計(jì)算段數(shù):count_paragraphs  演示:
  • {$val|count_paragraphs:false}
      解釋:計(jì)算$val的行數(shù),如果設(shè)置為true則包含空格計(jì)算,否則將忽略空格計(jì)算,默認(rèn)為false
  • 計(jì)算句數(shù):count_sentences  演示:
  • {$val|count_sentences}
      解釋:將對$val變量計(jì)算其句子的數(shù)量
  • 計(jì)算詞數(shù):count_words  演示:
  • {$val|count_words}
      解釋:將對$val變量計(jì)算其單詞的數(shù)量
  • 格式化日期:date_format  演示:
  • {$val|date_format:'%Y-%m-%d %H:%M:%S'}
      解釋:將對$val變量進(jìn)行時(shí)間格式化,$val是一個(gè)時(shí)間戳,date_format可以設(shè)置輸出的時(shí)間格式
  • 默認(rèn)值:default  演示:
  • {$val|default:'no txt'}
      解釋:如果$val沒有內(nèi)容,將會(huì)輸出default設(shè)置的文本
  • 轉(zhuǎn)義:escape  演示:
  • {$val|escape:'quotes'}
      解釋:將對$val變量進(jìn)行轉(zhuǎn)義,escape則是轉(zhuǎn)義的類型,詳細(xì)類型列表請見php的htmlentities函數(shù)第二個(gè)參數(shù)類型列表
  • 縮進(jìn):indent  演示:
  • {$val|indent:10:'-'}
      解釋:將對$val變量的進(jìn)行縮進(jìn)操作,10為縮進(jìn)的長度,'-'為縮進(jìn)的字符,可自定義
  • 小寫:lower  演示:
  • {$val|lower}
      解釋:將對$val變量的首個(gè)字符進(jìn)行小寫轉(zhuǎn)換
  • 換行替換:nl2br  演示:
  • {$val|nl2br}
      解釋:將變量值的\n\r換行符替換成<br />
  • 正則替換:regex_replace  演示:
  • {$val|regex_replace:"/[\r\t\n]/":" "}
      解釋:將對$val變量值進(jìn)行正則替換,替換內(nèi)容則是第二個(gè)參數(shù)
  • 替換:replace  演示:
  • {$val|replace:'a':'b'}
      解釋:將對$val變量值進(jìn)行替換操作,演示中將字符a替換成b
  • 字符串格式化:string_format  演示:
  • {$val|string_format:"%d"}
      解釋:將對$val變量值進(jìn)行字符串格式化,可以自定義格式化的方法
  • 去除空格:strip  演示:
  • {$val|strip}
      解釋:將對$val變量值進(jìn)行去除空格操作
  • 去除html標(biāo)簽:strip_tags  演示:
  • {$val|strip_tags}
      解釋:將對$val變量值進(jìn)行去除html標(biāo)簽操作
  • 截?。簍runcate  演示:
  • {$val|truncate:30:"..."}
      解釋:將對$val變量值進(jìn)行截取,演示中截取的長度為30,多余的字符將用'...'代替
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)