日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

20150210--Smarty1-02

發布時間:2024/7/19 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 20150210--Smarty1-02 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
20150210--Smarty1-02

三、設計篇

1、Smarty注釋

基本語法:

{*注釋內容*}

示例代碼:

2、Smarty中的變量

1)從PHP中分配的變量(普通的變量、數組、對象)

基本語法:

$smarty->assign();

示例代碼:

demo02.php

demo02.html

運行效果:

2)從配置文件中讀取變量

基本語法:

在html靜態模板頁面,可以采用如下方式調用:

{config_load file=’配置文件名稱‘}

{#配置文件中的標簽名稱#}

示例代碼:

效果如下:

3)在模板文件中創建

基本語法:

定義

{assign var=‘name’ value=‘value’}

{$name=‘zhangsan’}

調用

{$name}

示例代碼:

效果如下:

3、Smarty中的保留變量

$smarty.get.page? 相當于 $_GET[‘page’]

$smarty.post.page 相當于 $_POST[‘page’]

$smarty.cookies.username $_COOKIES[‘username’]

$smarty.server.SERVER_NAME $SERVER[‘SERVER_NAME’]

$smarty.env.Path 獲取系統中的環境變量的Path路徑

$smarty.session.id $_SESSION[‘id’]

$smarty.request.username $_REQUEST[‘username’]

{$smarty.now} :獲取當前系統時間

{$smarty.const} :獲取PHP中的常量

{$smarty.capture} :獲取capture標簽捕獲的內容

{$smarty.config} :讀取配置文件信息 {$smarty.config.title}

{$smarty.section} :獲取section循環信息

{$smarty.template} :獲取當前調用的靜態模板名稱

{$smarty.current_dir} :獲取當前路徑

{$smarty.version} :獲取當前Smarty的版本號

{$smarty.ldelim}?? =?? {ldelim} :獲取當前Smarty中的左分界符

{$smarty.rdelim}?? =?? {rdelim} :獲取當前Smarty中的右分界符

示例代碼:

demo03.html

運行效果:

4、變量調節器(變量格式化工具)

1)什么是變量調節器

答:變量調節器主要是對變量進行格式化

基本語法:

{變量|調節器:參數1:參數2:……}

2)常用的變量調節器

{$var|capitalize} : 首字母大寫

{$var|count_characters:true}? :計算字符長度,第二個參數true:計算空格

{$var|count_paragraphs} :計算段落數

{$var|count_sentences} :計算句子數

{$var|count_words} :計算詞數

{$var|cat:var2} :連接字符串

{$var|date_format:”%Y%m%d”} :時間格式化 Y年m月d日 H小時M分鐘S秒數

{$var|default:”value”} :設置默認值

{$var|escape} :轉碼,主要針對html代碼

{$var|indent:10:”*”} :字符縮進

{$var|lower} :轉化為小寫

{$var|nl2br} :把\n轉化為br標簽

{$var|regex_replace:”/[\t\n]/”:””} :正則替換

{$var|replace:”aa”:”bb”} :字符替換

{$var|spacify:”^^”} :插空(在字符與字符之間插空)

{$var|string_format:”%d”} :字符串格式化 %s格式化為字符串 %d格式化為整數

{$var|strip: “*”} :去除多余的空格

{$var|strip_tags} :去除html標記

{$var|truncate:30:”…”} :截取字符

{$var|upper} :轉化為大寫

{$var|wordwrap:30:”<br>”} :行寬約束(每行只能顯示多少個字符)

示例代碼:

例1:

例2:

例3:

例4:

5、變量調節器組合應用

{$var|capitalize|truncate:30:”…”|replace:”aa”:”bb”}

答:首字母大寫并截取30個字符并用…相接,并把字符串中的aa替換為bb

6、內建函數

1)capture

基本語法

{capture name=‘var’}

內容

{/capture}

{$smarty.capture.var}

功能:捕獲一段內容但本次不輸出

示例代碼:

運行效果:

2)config_load

基本語法

{config_load file=’配置文件名稱‘ section=’section節‘}

{#變量名稱#}

{$smarty.config.變量名稱}

示例代碼:

運行效果:

3)foreach

基本語法:

foreach,foreachelse

{foreach from=數組

key=鍵

name=名稱

item=內容 }?

{foreachelse}

{/foreach}

功能:實現對數組的遍歷輸出(類似foreach)

參數說明:

from:要遍歷的數組

item:每次遍歷時,系統會自動將遍歷后的結果保存到item選項中

name:為foreach循環進行命名

key:保存循環時的鍵值

foreachelse:當要遍歷的數組為空時,系統進入當前語句段

例1:遍歷一維數組

示例代碼

效果:

例2:二維數組遍歷

例3:鍵值key的使用

例4:foreachelse

說明:當數組為空時,系統自動轉向foreachelse語句

foreach中的附加屬性

$smarty.foreach.name.index????? @index 獲取當前循環索引

$smarty.foreach.name.iteration?? @iteration 第幾次循環(迭代)

$smarty.foreach.name.first @first????? 當第一次循環時,條件為真

$smarty.foreach.name.last?? @last 當最后一次循環時,條件為真

$smarty.foreach.name.total?? @total 獲取循環的總次數

例5:參數name演示

效果如下:

例6:實現隔行變色效果

示例代碼:

運行效果:

4)include

基本語法

{include file=“要包含的模板文件名稱” assign=“var” [var ...]}

功能:包含模板文件

參數說明:

file:要包含的 模板文件名稱

變量名=變量值的形式

原理圖:

對于我們的項目:由于項目的頭部與尾部大部分都是相同的,所以可以單獨分離出來,我們整個項目其實只需要做中間部分即可。

示例代碼:

運行效果:

5)include_php

基本語法:

{include_php file=“php文件路徑” once=true}

功能:引入外部php文件

once:規定引用次數為1次,boolean,true:當前文件只能引入一次,默認為true

說明:在smarty3.0中已經不推薦使用此標簽,如需使用,可以使用smarty2入口文件

6、insert

基本語法

{insert name=’函數名稱’ 變量=變量的值}

功能:允許我們在Smarty模板頁面直接引入php函數

示例代碼:

demo10.php代碼

demo10.html代碼

注:在使用insert方法時,請注意創建的函數前面必須添加insert_前綴,且傳遞的參數都是以數組的形式追加到函數的形參中。

作業:通過php+smarty完成分頁程序

posted on 2016-05-06 00:43?山山未遲 閱讀(...) 評論(...) 編輯 收藏

轉載于:https://www.cnblogs.com/lifushan/p/5463955.html

總結

以上是生活随笔為你收集整理的20150210--Smarty1-02的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。