程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> Smarty模板變量調節器用法分析

Smarty模板變量調節器用法分析

編輯:PHP綜合

本文講述了Smarty模板變量調節器用法。分享給大家供大家參考,具體如下:

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

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

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

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

{$str|truncate:40:"..."}
//截取字符串長度為40,並以...結尾。

Smarty模板中常用的變量調解函數

成員方法名

描 述

capitalize

將變量裡的所有單詞首字母大寫,參數值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

將變量改為大寫


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));
}

模版文件調用:

<{$a|capita}>

更多關於Smarty相關內容感興趣的讀者可查看本站專題:《smarty模板入門基礎教程》、《PHP模板技術總結》、《PHP基於pdo操作數據庫技巧總結》、《PHP運算與運算符用法總結》、《PHP網絡編程技巧總結》、《PHP基本語法入門教程》、《php面向對象程序設計入門教程》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家基於smarty模板的PHP程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved