Smarty模板變量調節器

Smarty模板變量調節器用法php

在smarty裏面,怎麼修飾文本和變量呢?固然,你能夠經過php函數處理文本,而後再經過assign()方法分配到模板,其實smarty提供了變量調節器可以很容易的處理文本,語法方式以下:

{$var|modifier1|modifier2|modifier3|…}

說明:1.無論應用了多少個函數,都應該以|來進行分離.

說明:2.參數用":"分開,如:html

{$str|truncate:40:"..."}
//截取字符串長度爲40,並以...結尾。正則表達式

marty模板中經常使用的變量調解函數

成員方法名
    

描 述

Scapitalize
    

將變量裏的全部單詞首字母大寫,參數值boolean型決定

帶數字的單詞是否首字大寫,默認不大寫

count_characters
    

計算變量值裏的字符個數,參數值boolean型決定是否計

算空格數,默認不計算空格

cat
    

將cat裏的參數值鏈接到給定的變量後面,默認爲空

count_paragraphs
    

計算變量裏的段落數量

count_sentences
    

計算變量裏句子的數量

count_words
    

計算變量裏的詞數

date_format
    

日期格式化,第一個參數控制日期格式,若是傳給date_format

的數據是空的,將使用第二個參數做爲默認時間

default
    

爲空變量設置一個默認值,當變量爲空或者未分配時,

由給定的默認值替代輸出

escape
    

用於html轉碼、url轉碼,在沒有轉碼的變量上轉換單引號、

十六進制轉碼、十六進制美化,或者JavaScript轉碼。

默認是html轉碼

indent
    

在每行縮進字符串,第一個參數指定縮進多少個字符,

默認是四個字符;第二個參數,指定縮進用什麼字符代替

lower
    

將變量字符串小寫

nl2br
    

全部的換行符將被替換成<br/>.功能同PHP中的nl2br()函數同樣

regex_replace
    

尋找和替換正則表達式,必須有兩個參數,參數1是替

換正則表達式,參數2使用什麼文本字串來替換

replace
    

簡單的搜索和替換字符串,必須有兩個參數,參數1是

將被替換的字符串,參數2是用來替換的文本

spacify
    

在字符串的每一個字符之間插入空格或者其餘的字符串.,

參數表示將在兩個字符之間插入的字符串,默認爲一個空格

string_format
   
是一種格式化浮點數的方法,例如十進制數,使用sprintf

語法格式化。參數是必須的,規定使用的格式化方式。%d

表示顯示整數,%.2f表示截取兩個浮點數

strip
   
替換全部重複的空格,換行和tab爲單個或者指定的字符串。

若是有參數則是指定的字符串

strip_tags
   
去除全部html標籤

truncate
   
從字符串開始處截取某長度的字符,默認是80個

upper
  
將變量改成大寫api

 

php代碼示例以下:

//capitalize(首字母大寫):

<{$a|capitalize}>

//count_characters(字符計數):

<{$b|count_characters}>

//cat(鏈接字符串):

<{$c|cat:world}>

//count_paragraphs(計算段數)----(換行符\n):

<{$d|count_paragraphs}>

//count_sentences(計算句數):

<{$e|count_sentences}>

//count_words(計算詞數):
 
<{$f|count_words}>

//date_format(格式化日期):
  
<{$smarty.now|date_format:"%y-%m-%d %H:%I:%S"}>

//default(默認值):
 
<{$biaoti|default:"no biaoti"}>

//escape(編碼):


<{$dz|escape}>

//indent(首行縮進):
    
<{$in|indent}>
<{$in|indent:1:"\t"}>

//nl2br換行符替換成:
    
<{$con|nl2br}>

//regex_replace 正則替換
  
<{$h|regex_replace:"/[\r\t\n]/":" <br/> "}>

//replace(替換)

   
<{$h|replace:"hello":"你好"}>

 

自定義變量調節器

每每開發中有時候是知足不了需求的,那就能夠直接寫這些變量調節器,其實所謂的變量調節器就是一個函數,在這裏咱們本身建一個,首先在plugins文件夾裏面間創建一個php文件,命名必定按着他的規範。函數

modifier.capita.php編碼

function Smarty_modifier_capita($string){
//函數命名也是有規範的
 return strtoupper(substr($string,0,1)).strtolower(substr($string,1));
}

模版文
相關文章
相關標籤/搜索