溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

PHP Smarty 模板 變量訪問 韓順平 講解

發(fā)布時(shí)間:2020-06-02 05:16:03 來源:網(wǎng)絡(luò) 閱讀:445 作者:津沙港灣 欄目:web開發(fā)

定界符重新定義 預(yù)防在模板中有js css 代碼時(shí) smarty模板引擎解析出現(xiàn)錯(cuò)誤!

注意點(diǎn):

tpl頁(yè)面模板中參數(shù)和值 在 php頁(yè)面中對(duì)應(yīng)關(guān)系。

例如

PHP頁(yè)面代碼

class Dog{
    var $arrT;
        function __construct($arr){
        $this->arrT=$arr;
    }
}
//一維索引數(shù)組
$arrA=array('beijing','shanghai','tianjin');
//實(shí)例化對(duì)象
$dog=new Dog($arrA);
$dog->master=$master;
$smarty->assign("dog",$dog);
$smarty->display("hello.tpl");

TPL頁(yè)面代碼
<{$dog->arrT.city1}>

在PHP頁(yè)面中Dog類中的成員變量arrT 對(duì)應(yīng) TPL頁(yè)面arrT

Dog類中構(gòu)造方法形式參數(shù)$arr

        function __construct($arr){
        $this->arrT=$arr;
    }

定義要傳入Dog類參數(shù)中的實(shí)參$arrA         $arrA=array('beijing','shanghai','tianjin');

在實(shí)例化對(duì)象時(shí)傳入實(shí)參$arrA                   $dog=new Dog($arrA);


//創(chuàng)建smarty對(duì)象
require_once './libs/Smarty.class.php';
$smarty=new Smarty();
$smarty->left_delimiter="<{";
$smarty->right_delimiter="}>";

布爾型boolean

php頁(yè)面

$smarty->assign("yang_boolean",true);

tpl頁(yè)面

<{$yang_string}>

瀏覽器

1

整型integer

php頁(yè)面

$smarty->assign("yang_int",567);

tpl頁(yè)面

<{$yang_int}>

瀏覽器

567

浮點(diǎn)型float

php頁(yè)面

$smarty->assign("yang_float",56.7);

tpl頁(yè)面

<{$yang_float}>

瀏覽器

56.7

字符串string

php頁(yè)面

$smarty->assign("yang_string","i come from China");

tpl頁(yè)面

<{$yang_string}>

瀏覽器

i come from China

數(shù)組array  一維索引數(shù)組

php頁(yè)面

$arr=array('beijing','shanghai','tianjin');
$smarty->assign("arr1",$arr);

tpl頁(yè)面

<{$arr1[0]}>||<{$arr1[1]}>||<{$arr1[2]}>

瀏覽器

beijing||shanghai||tianjin

數(shù)組array  一維索引數(shù)組

php頁(yè)面

$arr2=array(
    'city1'=>'beijing',  'city2'=>'上海',  'city3'=>'天津'
);
$smarty->assign("arr2",$arr2);

tpl頁(yè)面

<{$arr2.city1}>||<{$arr2.city2}>||<{$arr2.city3}>

瀏覽器

beijing||上海||天津||

數(shù)組array  二維數(shù)組 (第一層為索引數(shù)組,第二層為索引數(shù)組)

php頁(yè)面

$arr3=array(
    array("北京","上海","天津"),
    array("宋江","李逵","盧俊義")
);
$smarty->assign("arr3",$arr3);

tpl頁(yè)面

<{$arr3[0][0]}>||<{$arr3[0][1]}>||<{$arr3[0][2]}>||<{$arr3[1][0]}>||<{$arr3[1][1]}>||<{$arr3[1][2]}>

瀏覽器

北京||上海||天津||宋江||李逵||盧俊義

數(shù)組array  二維數(shù)組 (第一層為索引數(shù)組,第二層為關(guān)聯(lián)數(shù)組)

php頁(yè)面

//關(guān)聯(lián)二維數(shù)組
$arr4=array(
    array(
     "id"=>"a001",
     "name"=>"yang",
     "age"=>"33"        
    ),
    array(
        "id"=>"a002",
        "name"=>"wang",
        "age"=>"23"
    )
);
$smarty->assign("arr4",$arr4);

tpl頁(yè)面

<{$arr4[0].id}>||<{$arr4[0].name}>||<{$arr4[0].age}>||<{$arr4[1].id}>||<{$arr4[1].name}>||<{$arr4[1].age}>

瀏覽器

a001||yang||33||a002||wang||23

數(shù)組array  二維數(shù)組 (第一層為關(guān)聯(lián)數(shù)組,第二層為關(guān)聯(lián)數(shù)組)

php頁(yè)面

$arr5=array(
    "emp1"=>array(
        "id"=>"a001",
        "name"=>"yang",
        "age"=>"33"
    ),
    "emp2"=>array(
        "id"=>"a002",
        "name"=>"wang",
        "age"=>"23"
    )
);
$smarty->assign("arr5",$arr5);

tpl頁(yè)面

<{$arr5.emp1.id}>||<{$arr5.emp1.name}>||<{$arr5.emp1.age}>||<{$arr5.emp2.id}>||<{$arr5.emp2.name}>||<{$arr5.emp2.age}>

瀏覽器

a001||yang||33||a002||wang||23

數(shù)組array  二維數(shù)組 (第一層為關(guān)聯(lián)數(shù)組,第二層為索引數(shù)組)

php頁(yè)面

$arr6=array(
    "emp1"=>array(
       "a001","yang", "33"
    ),
    "emp2"=>array(
      "a002","wang", "23"
    )
);
$smarty->assign("arr6",$arr6);

tpl頁(yè)面

<{$arr6.emp1[0]}>||<{$arr6.emp1[1]}>||<{$arr6.emp1[2]}>||<{$arr6.emp2[0]}>||<{$arr6.emp2[1]}>||<{$arr6.emp2[2]}>

瀏覽器

a001||yang||33||a002||wang||23

對(duì)象object 

php頁(yè)面

class Dog{
    var $name;//var是公開變量
    var $age;
    var $color;
    var $arrT;
    var $arr2;
    var $master;//小狗主人
    function __construct($name,$age,$color,$arr,$arr2){
        $this->name=$name;
        $this->age=$age;
        $this->color=$color;
        $this->arrT=$arr;
        $this->arr2=$arr2;
    }
}
//一維索引數(shù)組
$arrA=array('beijing','shanghai','tianjin');
//一維關(guān)聯(lián)數(shù)組
$arrB=array(
    'city1'=>'beijing',  'city2'=>'上海',  'city3'=>'天津'
);

$arrC=array(
    array(
        "id"=>"a001",
        "name"=>"yang",
        "age"=>"33"
    ),
    array(
        "id"=>"a002",
        "name"=>"wang",
        "age"=>"23"
    )
);
//對(duì)象的分配
class Master{
    var $name;
    var $address;
}
$master=new Master();
$master->name="津沙港灣";
$master->address="廈門";
//實(shí)例化對(duì)象
$dog=new Dog("小明",5,"紅色",$arrA,$arrC);
$dog->master=$master;
$smarty->assign("dog",$dog);
$smarty->display("hello.tpl");

tpl頁(yè)面(對(duì)象成員,對(duì)象中一維索引數(shù)組,對(duì)象中二維數(shù)組,對(duì)象中對(duì)象的屬性

<{$dog->name}>||<{$dog->age}>||<{$dog->color}>
<{$dog->arrT[1]}>
<{$dog->arr2[0].name}>
<{$dog->master->name}>

瀏覽器

小明||5||紅色
shanghai
yang
津沙港灣

php頁(yè)面 (對(duì)象中參數(shù)傳入是一維關(guān)聯(lián)數(shù)組$arrB)

$arrB=array(
    'city1'=>'beijing',  'city2'=>'上海',  'city3'=>'天津'
);
$dog=new Dog("小明",5,"紅色",$arrB,$arrC);

tpl頁(yè)面(對(duì)象中一維關(guān)聯(lián)數(shù)組

<{$dog->arrT.city1}>

瀏覽器

beijing



向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI