> 當我們使用MVC開發模式當然少不了模板引擎,在本引擎中,您可以在模板引擎中使用函數來靈活的讓網頁多元化,現在我們來看看有哪些函數:
* * * * *
> 追加:append{}??演示:
```
{append var='name' value='val' index='start'}
```
>
> ?解釋:給特定name變量數組追加val值,如果index(數組索引)有值,則嘗試添加到index的下標*
* * * * *
> 賦值:{assign}??演示:
```
{assign var="name" value="val"}
```
> 解釋:給name變量名賦值val值*
* * * * *
> 循環:{for}??演示:
```
{for $foo=start to end}
```
> 解釋從start開始一直循環到end結束for標簽需要使用{/for}來閉合該函數*
* * * * *
>遍歷:{foreach}??演示:
```
{foreach $myarray as $key=>$val}
```
> 解釋:將遍歷$myarray數組變量,$key為循環的鍵,$val是循環的值,需要{/foreach}結尾*
* * * * *
> 條件:{if}{elseif}{else}??演示:
```
{if $name == 'admin'}
```
> 解釋:判斷$name變量值是否等于admin本函數需要使用{/if}結尾使用{elseif 條件}反向判斷,使用{else}來反向執行*
* * * * *
>包含:{include}??演示:
```
{include file='test.html'}
```
> 解釋:將test.html文件引用到本頁面*
* * * * *
> 解釋域:{literal}??演示:
```
{literal}
```
> 解釋:當文本處于{literal}與{/literal}之間,將不會被模板引擎所解釋,用于定義一些頁面上的CSS或javascript* .
* * * * *
>禁止緩存:{nocache}??演示:
```
{nocache}
```
> 解釋: 該函數可附著在其他函數使用也可以單獨使用,其作用是禁止緩存,已確保中間的內容是最新的,如果單獨使用請使用{/nocache}閉合函數*
* * * * *
>循環:{while}??演示:
```
{while $val > 0}
```
>解釋 一直循環到條件不滿足才會中止,否則將一直循環,需要使用{/while}閉合*
* * * * *
>載入:{fetch}??演示:
```
{fetch file='http://www.baidu.com' assign='txt'}
```
>
> 解釋: file參數可以是本地文件路徑或者是ftp文件也可以是http文件,如果assign不定義那么獲取的內容將會直接輸出,否則內容將會賦值給assign參數變量
>
* * * * *
#### 以下為變量操作函數:
>
> 首字符大寫:capitalize??演示:
>
```
{$val|capitalize:true}
```
>
> 解釋:將對$val變量的首個字符進行大寫轉換,如果設置為false則是小寫
> 連接字符串:cat??演示:
>
```
{$val|cat:"我是追加的字符"}
```
>
>解釋:將對$val變量尾部追加上cat設置的文本
>字符計數:count_characters??演示:
>
```
{$val|count_characters:true}
```
>
>
> 解釋:將統計$val的字符長度,如果設置為false則不計算空格,否則將會計算空格,默認為false
> 計算段數:count_paragraphs??演示:
>
```
{$val|count_paragraphs:false}
```
>
>?解釋:計算$val的行數,如果設置為true則包含空格計算,否則將忽略空格計算,默認為false
> 計算句數:count_sentences??演示:
>
```
{$val|count_sentences}
```
>
> ?解釋:將對$val變量計算其句子的數量
> 計算詞數:count_words??演示:
>
```
{$val|count_words}
```
>
>解釋:將對$val變量計算其單詞的數量
> 格式化日期:date_format??演示:
>
```
{$val|date_format:'%Y-%m-%d %H:%M:%S'}
```
>
> ?解釋:將對$val變量進行時間格式化,$val是一個時間戳,date_format可以設置輸出的時間格式
> 默認值:default??演示:
>
```
{$val|default:'no txt'}
```
>
>?解釋:如果$val沒有內容,將會輸出default設置的文本
> 轉義:escape??演示:
>
```
{$val|escape:'quotes'}
```
>
> 解釋:將對$val變量進行轉義,escape則是轉義的類型,詳細類型列表請見php的htmlentities函數第二個參數類型列表
>縮進:indent??演示:
>
```
{$val|indent:10:'-'}
```
>
> 解釋:將對$val變量的進行縮進操作,10為縮進的長度,'-'為縮進的字符,可自定義
> 小寫:lower??演示:
>
```
{$val|lower}
```
>
> ?解釋:將對$val變量的首個字符進行小寫轉換
> 換行替換:nl2br??演示:
>
```
{$val|nl2br}
```
>
> 解釋:將變量值的\n\r換行符替換成
> 正則替換:regex_replace??演示:
>
```
{$val|regex_replace:"/[\r\t\n]/":" "}
```
>
> 解釋:將對$val變量值進行正則替換,替換內容則是第二個參數
>替換:replace??演示:
>
```
{$val|replace:'a':'b'}
```
>
> 解釋:將對$val變量值進行替換操作,演示中將字符a替換成b
> 字符串格式化:string_format??演示:
>
```
{$val|string_format:"%d"}
```
>
> 解釋:將對$val變量值進行字符串格式化,可以自定義格式化的方法
>去除空格:strip??演示:
>
```
{$val|strip}
```
>
> ?解釋:將對$val變量值進行去除空格操作
> 去除html標簽:strip_tags??演示:
>
```
{$val|strip_tags}
```
>
> ?解釋:將對$val變量值進行去除html標簽操作
> 截取:truncate??演示:
>
```
{$val|truncate:30:"..."}
```
>
> 解釋:將對$val變量值進行截取,演示中截取的長度為30,多余的字符將用'...'代替
- 基本使用
- 安裝
- 結構
- 規范
- 命名空間
- 控制器
- 注意事項
- 系統方法
- Action方法
- Libs方法
- Config方法
- Receive方法
- Db方法
- Success方法
- Error方法
- Cache方法
- Session方法
- Cookie方法
- Show方法
- Assign方法
- Fetch方法
- Url方法
- Glovar方法
- Yun方法
- 系統配置
- System配置
- Mysql配置
- View配置
- Url配置
- 數據模型
- 連接數據庫
- 添加數據
- 刪除數據
- 修改數據
- 查詢數據
- 連貫操作
- alias
- field
- where
- join
- order
- limit
- group
- union
- page
- 其他操作
- 執行Mysql語句
- 模板視圖
- 變量輸出
- 展示模板
- 獲取內容
- 運算符
- 模板函數
- 使用框架方法
- 訪問操作
- 默認訪問
- 靜態化
- 擴展類庫
- Image類
- Http類
- File類
- 中文編譯
- 進行編寫
- 對照表介紹
- 對照表
- 系統結構
- 常用操作
- 字符操作
- 數組操作
- 文件操作
- 邏輯操作
- 計算操作
- 進制轉換
- 其他
- 系統常量
- 入口文件
- 其他
- 更新日志