一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

php中Smarty模板初體驗(yàn)

下面介紹一下Smarty模板引擎的特性:

  1. 速度:采用Smarty編寫(xiě)的程序可以獲得最大速度的提高,這一點(diǎn)是相對(duì)于其它的模板引擎技術(shù)而言的。

  2. 編譯型:采用Smarty編寫(xiě)的程序在運(yùn)行時(shí)要編譯成一個(gè)非模板技術(shù)的php文件,這個(gè)文件采用了php與HTML混合的方式,在下一次訪問(wèn)模板時(shí)將WEB請(qǐng)求直接轉(zhuǎn)換到這個(gè)文件中,而不再進(jìn)行模板重新編譯(在源程序沒(méi)有改動(dòng)的情況下)

  3. 緩存技術(shù):Smarty選用的一種緩存技術(shù),它可以將用戶最終看到的HTML文件緩存成一個(gè)靜態(tài)的HTML頁(yè),當(dāng)設(shè)定Smarty的cache屬性為true時(shí),在Smarty設(shè)定的cachetime期內(nèi)將用戶的WEB請(qǐng)求直接轉(zhuǎn)換到這個(gè)靜態(tài)的HTML文件中來(lái),這相當(dāng)于調(diào)用一個(gè)靜態(tài)的HTML文件。

  4. 插件技術(shù):Smarty可以自定義插件。插件實(shí)際就是一些自定義的函數(shù)。

  5. 模板中可以使用if/elseif/else/endif。在模板文件使用判斷語(yǔ)句可以非常方便的對(duì)模板進(jìn)行格式重排。

  使用Smarty模板版本Smarty-3.0.8,解壓后文件目錄如下:

  于是開(kāi)始了我的Smarty之旅嘍――

  Step 1

  在服務(wù)器網(wǎng)頁(yè)文件夾中新建一個(gè)smartytest文件夾,只取libs目錄中的文件,復(fù)制到smartytest文件夾下,更名為smarty

  Step 2

  在test中新建目錄templates,并在該目錄下新建四個(gè)文件夾cache、configs、templates、templates_c,建成的文件夾形式如下圖

  Step 3

  寫(xiě)一個(gè)配置文件,通過(guò)它可以實(shí)現(xiàn)與Smarty的連接,而且把它寫(xiě)成單獨(dú)的文件可以在寫(xiě)不同頁(yè)面時(shí)重復(fù)寫(xiě)相同的代碼(當(dāng)然也可以把它寫(xiě)成類形式,便于自定義),這里我把它文件名定為config.php
復(fù)制代碼 代碼如下:
<?php
//獲取當(dāng)前文件夾所在的絕對(duì)路徑 H:/wamp/www/smartytest/
define('SMARTY_PATH',substr(dirname(__FILE__),0,-9));
//獲取templates文件夾的絕對(duì)路徑 H:/wamp/www/smartytest/templates
define('TEMPLATES_PATH',SMARTY_PATH.'templates/');
require SMARTY_PATH.'smarty/Smarty.class.php';
$smarty = new Smarty;
//定義目錄路徑
$smarty->template_dir = TEMPLATES_PATH.'templates/';
$smarty->complile_dir = TEMPLATES_PATH.'templates_c/';
$smarty->config_dir = TEMPLATES_PATH.'configs/';
$smarty->cache_dir = TEMPLATES_PATH.'cache/';
//定義左右結(jié)束符 {% 和 %}
$smarty->left_delimiter = '{%';
$smarty->right_delimiter = '%}';
//關(guān)閉緩存
$smarty->caching = false;
//關(guān)閉調(diào)試
$smarty->debugging = false;
?>

  Step 4
  寫(xiě)一個(gè)簡(jiǎn)單的模板文件命名為index.tpl,放到templates/templates目錄下
復(fù)制代碼 代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<metahttp-equiv="Content-Type" content="text/html;charset=utf-8">
<title>Smarty</title>
</head>
<body>{%$hello%}</body>
</html>

  Step 5
  寫(xiě)一個(gè)php文件,命名為index.php,放在templates文件目錄下
復(fù)制代碼 代碼如下:
<?php
require 'config.php';
$smarty->assign('hello','Hello Word');
$smarty->display('index.tpl');
?>

現(xiàn)在文件目錄為

  Step 6

  測(cè)試文件:

  

  總結(jié):使用Smarty模板過(guò)程中也遇見(jiàn)了問(wèn)題,比如Smarty的目錄可以自己設(shè)置,自定義性較強(qiáng),因此對(duì)Smarty的教程有很多版本(我在書(shū)上看到一個(gè)版本,百度百科也有另一種),結(jié)果兩個(gè)都參考就不明白怎么放了,最后還是使用百度百科的那種(也就是上文所說(shuō));其次在百度百科中的代碼是復(fù)制過(guò)來(lái)的,結(jié)果在使用時(shí)出現(xiàn)了syntax error, unexpected T_VARIABLE錯(cuò)誤,看著代碼都很對(duì)啊,就是出錯(cuò),最后查找原因,原來(lái)是網(wǎng)頁(yè)中的全角空格所致,所以在網(wǎng)頁(yè)上復(fù)制的代碼的莫名錯(cuò)誤最好的辦法就是把空格都去了重新寫(xiě);注意在寫(xiě)php文件時(shí)hello沒(méi)有前邊的$符號(hào),而在tpl文件中引用時(shí)就必須得加上$符號(hào)。

php技術(shù)php中Smarty模板初體驗(yàn),轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲免费人成 | 欧美黑人粗硬大在线看 | 中文字幕 亚洲精品 第1页 | 国产一区二区三区在线看 | 一级特黄色毛片免费看 | 午夜精品久视频在线观看 | 欧美午夜性刺激在线观看免费 | 国产精品久久久久久亚洲小说 | 成人年鲁鲁在线观看视频 | 精品伊人久久久大香线蕉欧美 | 国产专区视频在线观看 | 一区二区精品视频 | 日本视频一区二区三区 | 美妇乱人伦性 | 久久免 | 成人福利在线观看免费视频 | 久99久热只有精品国产男同 | 婷婷久久精品 | 久久影院精品 | 久9视频这里只有精品 | 精品国产福利第一区二区三区 | 九九99九九精彩网站 | 久久精品中文字幕 | 欧美亚洲激情在线 | 国产三级自拍 | 四川幻女一级毛片 | 免费在线国产视频 | 美女被男人桶到嗷嗷叫爽网站 | 99久久久久国产 | 久久精品国产线看观看亚洲 | 人人爱天天做夜夜爽2020麻豆 | 1024香蕉视频 | 亚洲综合在线网 | 国产视频自拍一区 | 国产精品久久久久久久牛牛 | 91综合在线视频 | 色草在线 | 国内精品久久久久久影院8f | 中文字幕一二三四区 | 一级做a爰片久久毛片图片 一级做a爰片久久毛片武则天 | 久久国产成人精品麻豆 |