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

php使用Smarty的相關(guān)注意事項(xiàng)及訪問變量的幾種方式

$tpl=new Smarty();//新建一個smarty對象,我使用的是Smarty-3.1.6版本
1.設(shè)置smarty模板路徑$tpl->setTemplateDir();默認(rèn)情況下是templates
2.設(shè)置smarty模板編譯路徑$tpl->setCompileDir();默認(rèn)情況下是templates_c
3.設(shè)置smarty模板引擎的左右 分隔符,

       $tpl->left_delimiter="<{";

       $tpl->right_delimiter="}>";

       默認(rèn)情況下:public $left_delimiter = "{";//smarty源代碼

                        public $right_delimiter = "}";//smarty源代碼

    為什么我們要改這些分隔符?

  因?yàn)楸热缭谳^早版本smarty引擎模板中,會報(bào)錯,不能自動識別。
比如:
<style>
div{margin:0;}
</style>
或者 Javascript中
復(fù)制代碼 代碼如下:
<script>
function show(){
alert("smarty");
}
</script>

這兩種情況下,都有“左右大括號”,smarty引擎碰到會報(bào)錯
4.初始化操作我們可以在外部另外創(chuàng)建一個初始化操作的php文件,如:smarty.ini.php。然后在php文件中包括進(jìn)來即可
復(fù)制代碼 代碼如下:
<?php
include "../Smarty3.1.6/libs/Smarty.class.php";
$tpl=new Smarty();
$tpl->setTemplateDir("./Tpl");
$tpl->setTemplateDir("./Compile");
$tpl->left_delimiter="<{";
$tpl->right_delimiter="}>";
?>

5.使用smarty模板引擎的display函數(shù)或者include其他模板時,都得以smarty對象中指定的模板目錄(比如:Tpl目錄,默認(rèn)是templates目錄)為基目錄。
 ?、倌0迥夸浭?Tpl,該目錄下存放著很多模板,有default,green,red模板,default模板目錄下有很多模板文件(index.tpl、header.tpl、footer.tpl),此時display的正確用法:$tpl->display(“default/index.tpl”);即基目錄下的default模板目錄
  ②在模板文件(如:index.tpl)中包含其他模板文件時(如:header.tpl、footer.tpl),include的正確寫法應(yīng)該是:<{include “default/header.tpl”}> 、<{include “default/footer.tpl”}>
  雖然index.tpl、header.tpl、footer.tpl都在同一個目錄下,但是<{include “header.tpl”}> 、<{include “footer.tpl”}>是錯誤的寫法,這種情況,smarty引擎會到Tpl目錄下找header和footer,而不是在default下面查找
6.如果要想讓各個目錄下的php程序都可以加載Smarty和使用Smarty指定的模板目錄和編譯目錄,唯一的辦法是使用絕對路徑。
7.Smarty模板引擎中訪問變量的方式(模板中的變量前記得加”$”符號)
①訪問數(shù)組
索引數(shù)組:
   $tpl->assign("arr",array("aa","bb","cc"));
   $tpl->assign("arr2",array(array("二維數(shù)組一一","二維數(shù)組一二"),array("二維數(shù)組二一","二維數(shù)組二二")));
     訪問索引數(shù)組:<{ $arr[0] }>、<{ $arr[0] }>、<{ $arr[0] }>
   訪問二維索引數(shù)組:<{ $arr2[0][0] }>、<{ $arr2[0][1] }>
關(guān)聯(lián)數(shù)組:(使用 . 符號來訪問)
   訪問關(guān)聯(lián)數(shù)組:<{$arr3.id}>、<{$arr3.name}>、<{$arr3.age}>
②訪問對象
創(chuàng)建對象:  
復(fù)制代碼 代碼如下: 
class human{
private $sex;
private $name;
private $age;
public function __construct($s,$n,$a){
$this->sex=$s;
$this->name=$n;
$this->age=$a;
}
public function print_info(){
return $this->sex."--".$this->name."--".$this->age;
}
}
$tpl->assign("student",new human("male","MarcoFly",22));

給模板中的對象賦值:<{$student->print_info()}>
8.Smarty模板引擎中的數(shù)學(xué)運(yùn)算可以應(yīng)用到模板變量中
給變量賦值
    $tpl->assign("num1",10);
    $tpl->assign("num2",5.5);
模板變量輸出
    <{$num1}> //結(jié)果10
    <{$num2}> //結(jié)果5.5
    <{$num1+$num2}> //結(jié)果15.5
    <{$num1+$num2*$num2/$num1}>//結(jié)果13.025
原創(chuàng)文章
轉(zhuǎn)載請注明:WEB開發(fā)_小飛

php技術(shù)php使用Smarty的相關(guān)注意事項(xiàng)及訪問變量的幾種方式,轉(zhuǎn)載需保留來源!

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

主站蜘蛛池模板: 老司机51精品视频在线观看 | 婷婷久久综合九色综合九七 | 国产美女精品久久久久久久免费 | 免费一区二区三区视频导航 | 丁香五六月婷婷 | 一区二区三区四区在线 | 99国产精品免费观看视频 | 免费在线观看色 | 五月天丁香婷婷开心激情五月 | 看大片全色黄大色黄 | 狠狠色伊人亚洲综合第8页 狠狠色伊人亚洲综合网站l | 欧美色欧美亚洲另类二区不卡 | 91麻豆麻豆| 四虎影视久久久免费 | 亚洲天堂视频一区 | 免费毛片在线视频 | 欧亚激情偷乱人伦小说视频 | 最新国产在线观看福利 | 色多多在线观看视频 | 东北普通话清晰对白 | 伊人精品视频在线 | 天天干天天干天天干天天 | 色婷婷综合在线视频最新 | 亚洲第一色网 | 精品国产bdsm | 91在线综合 | 久久久中文字幕日本 | 四虎最新入口 | 91在线视频免费观看 | 国产精品好好热在线观看 | 国产一二三 | 免费啪视频观在线视频在线 | 亚洲欧美久久婷婷爱综合一区天堂 | 国产zzzwww在线观看 | 亚洲视频一二三 | 国产中的精品一区的 | 中文字幕一区二区在线视频 | 92精品国产自产在线观看48 | 亚洲精品女同中文字幕在线 | 国产高清国内精品福利色噜噜 | 最新亚洲精品国自产在线 |