Smarty執行個體教程-模板設計部分

來源:互聯網
上載者:User

一、什麼是smarty?

smarty是一個使用PHP寫出來的模板PHP模板引擎,它提供了邏輯與外在內容的分離,簡單的講,目的就是要使用PHP程式員同美工分離,使用的程式員改變程式的邏輯內容不會影響到美工的頁面設計,美工重新修改頁面不會影響到程式的程式邏輯,這在多人合作的項目

中顯的尤為重要。

二、smarty優點:

1. 速度:採用smarty編寫的程式可以獲得最大速度的提高,這一點是相對於其它的模板引擎技術而言的。

2. 編譯型:採用smarty編寫的程式在運行時要編譯成一個非模板技術的PHP檔案,這個檔案採用了PHP與HTML混合的方式,在下一次訪問模板時將WEB請求直接轉換到這個檔案中,而不再進行模板重新編譯(在來源程式沒有改動的情況下)

3. 緩衝技術:smarty選用的一種緩衝技術,它可以將使用者最終看到的HTML檔案快取成一個靜態HTML頁,當設定smarty的cache屬性為true時,在smarty設定的cachetime期內將使用者的WEB請求直接轉換到這個靜態HTML檔案中來,這相當於調用一個靜態HTML檔案。

4. 外掛程式技術:smarty可以自訂外掛程式。外掛程式實際就是一些自訂的函數。

5. 模板中可以使用if/elseif/else/endif。在模板檔案使用判斷語句可以非常方便的對模板進行格式重排。

三、不適合使用smarty的地方:

1. 需要即時更新的內容。例如像股票顯示,它需要經常對資料進行更新,這類型的程式使用smarty會使模板處理速度變慢。

2. 小項目。小項目因為項目簡單而美工與程式員兼於一人的項目,使用smarty會喪失php開發迅速的優點。

四、安裝smarty類:

安裝smarty的環境:php版本4.06以上版本。

安裝smarty方法非常簡單,從http://samrty.php.net中下載smarty.將Libs中所有檔案

拷入comm目錄,完成基本安裝.

其它進階安裝使用方法請看手冊.

五、smarty在模板中的使用:

本節通過幾個執行個體來講一講smarty的使用。smarty模板通常使用.tpl來標識,有些人為了美工方便,將副檔名直接寫成.html,也是可以的。本文中採用smarty標準寫法:以.tpl來表示為一個smarty模板。

PHP代碼:--------------------------------------------------------------------------------

執行個體1:

先來看一個簡單的例子。

=====================================================

index.tpl

=====================================================

{* 顯示是smarty變數識符裡的用*包含的文字為注釋內容 *}

{include file="header.tpl"}{*頁面頭*}

大家好,我叫{$name}, 歡迎大家閱讀我的smarty學習材料。

{include file="foot.tpl"}{*頁面尾*}

上邊的這個例子是一個tpl模板,其中:

1. {**}是模板頁的注釋,它在smarty對模板進行解析時不進行任何輸出,僅供模板設計師對模板進行注釋。

2. {include file="xxx.tpl"}使用此句將一個模板檔案包含到當前頁面中,例子中將在網站中公用事的head.tpl與foot.tpl進行了包含,你可以

這樣想,使用這一句將xxx.tpl中的內容全部複製在當前語句處。當然,你不使用這一句也可以,將XXX.tpl中的內容複寫到當前語句處

也是完全可以了。

3.{$name}: 模板變數,smarty中的核心組成,採用smarty定義的左邊界符{與右邊界符}包含著、以PHP變數形式給出,在smarty程式中將使用

$smarty->assign("name", "李曉軍");將模板中的$name替換成“李曉軍”三個字。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.