成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

PHP模板Smarty的具體使用指南

開發 后端
PHP模板Smarty在進行安裝時首先要下載PHP模板Smarty,然后再根據本文介紹的步驟一一操作,就能完成正確的操作步驟。

PHP語言是一門經常用到的計算機高級語言。我們在這里將為大家具體介紹PHP模板Smarty的安裝于使用方法,希望對大家有所幫助。在利用PHP開發大型、交互式網站時,我們時常遇到與美工如何合作的問題。

#t#通常我們的解決方法是由美工設計頁面后交付程序設計者進行開發,再交付美工對頁面進行改善,來回重復好幾回,如果遇到程序設計者對HTML不熟悉,對雙方來說更是個痛苦的差事,效率也更低下,這時候如果有模板支持就顯得非常重要。

我們知道PHP語言作為開源社區的一員,提供了各種模板引擎,如FastTemplate,Smarty,SimpleTemplate等,而Smarty是現在使用得比較多的PHP模板引擎,今天和大家分享在PHP開發中如何安裝與使用PHP模板Smarty,也算是對Smarty的入門學習。

準備工作

1、選擇安裝Smarty的目錄

如果擁有服務器權限,考慮到安全性可以選擇將Smarty安裝在WEB程序文檔目錄之外的地方,然后通過將Smarty安裝目錄地址包含在PHP.INI文件中的include_path選項。

如果是虛擬主機權限,或者好幾個項目,可以將Smarty安裝在各自的項目目錄中,在require Smarty類文件,也可以使用Smarty模板引擎。當然為了安全考慮,你可以通過apache禁止相關目錄訪問。

另外這兩種PHP模板Smarty安裝方式在移植性方面有所區別,第一種方式需要保證每臺服務器有相同的Smarty配置,第二種方式對每臺服務器配置沒有影響。你可以根據各自的需要選擇Smarty的安裝方式。

2、下載Smarty,,我選擇的是Smarty-2.6.25

PHP模板Smarty安裝步驟

1、解壓下載的Smarty-2.6.25壓縮包

2、拷貝libs文件夾到WEB程序目錄下,我的目錄為test\smarty

Linux下的安裝方法可以參考這里。

在安裝完Smarty模板后,我們開始簡單使用Smarty。

PHP模板Smarty使用

1、創建相關目錄

由于在使用Smarty的過程中,Smarty會生成編譯的模板文件以及其他配置文件、緩存文件,我們需要創建相關的目錄。我在test\smarty目錄下,另外創建了tpls目錄,并在tpls目錄下創建templates、templates_c、configs、cache目錄。為什么需要創建這些目錄呢?打開Smarty.class.php文件,我們可以看到Smarty類定義了部分的成員屬性。

$template_dir:設定所有模板文件都需要放置的目錄地址。默認情況下,目錄是:“./templates”,也就是在PHP執行程序同一個目錄下尋找該模板目錄。

$compile_dir:設定Smarty編譯過的所有模板文件的存放目錄地址。默認目錄是:“./templates_c”,也就是在PHP執行程序同一個目錄下尋找該編譯目錄。如果你在Linux服務器上創建這個目錄,你還需要修改此目錄的權限,使它有寫的權限。

$config_dir:設定用于存放模板特殊配置文件的目錄,默認目錄是:“./configs”,也就是在PHP執行程序同一個目錄下尋找該配置目錄。

$cache_dir:在啟動緩存特性的情況下,這個屬性所指定的目錄中放置PHP模板Smarty緩存的所有模板。默認目錄是:”./cache”,也就是在PHP執行程序同一個目錄下尋找該緩存目錄。你也可以用你自定義的緩存處理函數來控制緩存文件,它將會忽略這項設置。同樣如果你在Linux服務器上創建這個目錄,你還需要修改此目錄的權限,使它有寫的權限。

為了系統安全和移植性考慮,建議不要將這些目錄建立在PHP執行程序同一目錄下,可以將它建立在PHP執行程序目錄之外,如果已建立在PHP執行程序同一目錄下,可以通過Apache做好目錄限制訪問工作。

2、建立相關配置文件

我們需要創建一個配置文件,來覆蓋PHP模板Smarty類的默認成員屬性,并命名為main.php,保存在smarty目錄下,以后哪個腳本需要使用Smarty,我們只要把main.php包含進來即可。

  1. < ?  
  2. include("./smarty/libs/Smarty.class.php");  
  3. define('SMARTY_ROOT', './smarty/tpls');  
  4. $tpl = new Smarty();  
  5. $tpl->template_dir = SMARTY_ROOT."/templates/";  
  6. $tpl->compile_dir = SMARTY_ROOT."/templates_c/";  
  7. $tpl->config_dir = SMARTY_ROOT."/configs/";  
  8. $tpl->cache_dir = SMARTY_ROOT."/cache/";  
  9. $tpl->caching=1;  
  10. $tpl->cache_lifetime=60*60*24;  
  11. $tpl->left_delimiter = '< {';  
  12. $tpl->right_delimiter = '}>';  
  13. ?> 

 

注釋:

第1-8行:主要定義一個smarty對象,同時設定模板文件、編譯文件、緩存文件、配置文件的存放目錄,覆蓋Smarty.class.php中的默認值。

第9-10行:設定開啟緩存,同時設定緩存的有效時間為1天。
知識點:$caching用來設置是否開啟緩存功能。默認值設為0或無效。你也可以為同一個模板設有多個緩存,當值為1或2時啟動緩存。1告訴Smarty使用當前的$cache_lifetime變量判斷緩存是否過期。2告訴PHP模板Smarty使用生成緩存時的cache_lifetime值。建議在項目開發過程中關閉緩存,將值設置為0

第11-12行:設置smarty語言的左右結束符,我們知道大括號是smarty的默認定界符,但在和javascript、css等結合時可能會產生沖突,所以這里我們設定為<{和}>。

3、建立一個模板文件

一般情況下在美工頁面設計完畢后,雙方的交集點是模版文件,雙方約定后,程序員不需要花太大的精力在前臺,這就是使用Smarty模板引擎進行開發的好處。

我們首先建立一個簡單的模版文件,名為leapsoul.tpl,你可在html文件中加入smarty變量后將文件另存為tpl類型的文件。

  1. < html> 
  2. < head> 
  3. < meta http-equiv="Content-type" 
    content="text/html; charset=gb2312"> 
  4. < title>   
  5. < { $title }> 
  6. < /title>   
  7. < /head>   
  8.  <body>   
  9. < { $content }>   
  10. < /body>   
  11. < /html> 

 

注釋:在這個tpl文件中設定了title和content兩個PHP模板Smarty變量,文件保存為leapsoul.tpl,同時將其保存在test\smarty\tpls\templates模板文件目錄下。

4、建立應用程序文件

模版文件類似于一個表現層,在建立完模板文件后,我們需要一個應用程序去驅動表現層,應用程序文件定義為smarty.php。

  1. < ?  
  2. include("smarty/main.php");  
  3. $tpl->assign("title", "leapsoul.cn為你
    展示smarty模板技術");  
  4. $tpl->assign("content", "leapsoul.cn
    通過詳細的安裝使用步驟為你展示smarty模板技術");  
  5. $tpl->display("leapsoul.tpl");  
  6. ?> 

 

注釋:

在這段代碼中我們主要用到smarty中的兩個函數assign和display,assign你可以理解為為變量賦值,display主要是用來將網頁輸出。更多smarty函數今后會詳細介紹。

其他說明

由于我們開啟了緩存功能,有興趣的朋友可以打開cache和templates_c,cache目錄存放了這個模板的緩存文件,文件開頭部分有緩存信息,如文件的生成時間和過期時間等,其他的和一般的HTML文件沒有多大的區別,而templates_c存放了模板經過編譯后的PHP執行文件。

至此一個簡單入門的PHP模板Smarty應用實例就算介紹完成了。 

責任編輯:曹凱 來源: leapsoul.cn
相關推薦

2009-12-31 17:17:45

Silverlight

2017-01-04 15:22:57

TrimPath模板引擎

2011-07-07 13:48:35

Smarty

2011-07-07 16:15:20

Smarty

2022-09-29 09:07:08

DataGrip數據倉庫數據庫

2012-12-26 12:41:14

Android開發WebView

2011-07-21 14:57:34

jQuery Mobi

2021-07-27 10:09:27

鴻蒙HarmonyOS應用

2009-12-28 17:40:10

WPF TextBox

2010-09-06 14:24:28

ppp authent

2021-01-12 15:19:23

Kubernetes

2010-06-03 17:27:36

Hadoop命令

2010-08-04 15:37:31

Flex圖表

2010-08-05 15:40:21

FlexBuilder

2010-12-12 11:27:00

PGP使用指南

2023-10-25 14:51:38

MySQL數據庫JSON

2010-08-04 14:28:01

Flex組件

2022-06-23 08:01:36

FlaskSocketIOSwift

2019-11-13 12:39:26

Python 開發編程語言

2024-02-04 00:00:00

Loki性能查詢
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 免费一区 | 日韩欧美成人一区二区三区 | 国产成人综合一区二区三区 | 91精品国产色综合久久不卡98口 | а_天堂中文最新版地址 | 免费99精品国产自在在线 | 日韩一区二区免费视频 | 日韩高清国产一区在线 | 色999日韩| 一级网站| 欧美一级黄色片在线观看 | www一级片 | 日韩精品在线免费观看 | 欧美视频中文字幕 | 暖暖日本在线视频 | 精品小视频 | 久久久亚洲一区 | 99精品免费 | 午夜精品一区二区三区在线观看 | 欧美在线观看一区二区 | 黄色片视频| 亚洲国产高清免费 | 免费观看黄色片视频 | 中文字幕乱码视频32 | 天天干天天操 | a级大毛片| 国产精品一二三区 | 亚洲三区在线观看 | 亚洲综合三区 | 麻豆va | 国产精品久久久久久久久 | 成人在线小视频 | 一区二区三区影院 | 日韩三区 | 亚洲精品一区中文字幕乱码 | 在线一区| 久草热视频 | 黑人性hd| 久久99深爱久久99精品 | 亚洲一区三区在线观看 | 日本一区二区在线视频 |