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

php中Smarty模板初體驗

下面介紹一下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模板版本Smarty-3.0.8,解壓后文件目錄如下:

  于是開始了我的Smarty之旅嘍――

  Step 1

  在服務器網頁文件夾中新建一個smartytest文件夾,只取libs目錄中的文件,復制到smartytest文件夾下,更名為smarty

  Step 2

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

  Step 3

  寫一個配置文件,通過它可以實現與Smarty的連接,而且把它寫成單獨的文件可以在寫不同頁面時重復寫相同的代碼(當然也可以把它寫成類形式,便于自定義),這里我把它文件名定為config.php
復制代碼 代碼如下:
<?php
//獲取當前文件夾所在的絕對路徑 H:/wamp/www/smartytest/
define('SMARTY_PATH',substr(dirname(__FILE__),0,-9));
//獲取templates文件夾的絕對路徑 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/';
//定義左右結束符 {% 和 %}
$smarty->left_delimiter = '{%';
$smarty->right_delimiter = '%}';
//關閉緩存
$smarty->caching = false;
//關閉調試
$smarty->debugging = false;
?>

  Step 4
  寫一個簡單的模板文件命名為index.tpl,放到templates/templates目錄下
復制代碼 代碼如下:
<!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
  寫一個php文件,命名為index.php,放在templates文件目錄下
復制代碼 代碼如下:
<?php
require 'config.php';
$smarty->assign('hello','Hello Word');
$smarty->display('index.tpl');
?>

現在文件目錄為

  Step 6

  測試文件:

  

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

php技術php中Smarty模板初體驗,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 在线色国产 | 伊人狠狠干 | 亚洲图区综合网 | 99热这里只有精品国产动漫 | 成人福利免费在线观看 | 亚洲综合图片小说区热久久 | 91免费精品国偷自产在线在线 | 亚洲欧美综合另类图片小说区 | 色综合成人 | 成人精品一级毛片 | 久久99国产乱子伦精品免 | 99在线精品日韩一区免费国产 | 97人洗澡从澡人人爽人人模 | 亚洲图片一区二区三区 | 乱码一区二区三区完整视频 | 国产精品视频第二区第二页 | 成年人免费小视频 | 国产色综合天天综合网 | 日韩欧美三区 | 国产一区二区精品久久岳 | 日日狠狠久久偷偷四色综合免费 | 国内精品久久影院 | 国产麻豆精品原创 | 亚洲国产一区二区三区最新 | 加勒比一道本综合 | 欧美大尺度无遮挡性视频 | 一区二区国产在线播放 | 国产精品久久国产精麻豆99网站 | 99xxoo视频在线永久免费观看 | 一区二区3区免费视频 | 精品国产一区二区三区麻豆小说 | 在线播放一区二区精品产 | 国产乱子伦手机在线 | 美女视频很黄很a免费国产 美女视频黄.免费网址 | 国产青草视频在线观看 | 日韩欧美一二区 | 青青草国产精品人人爱99 | 国精品一区二区三区 | 黄色在线观看www | 精品免费看 | 免费看91|