PHPSmarty模板变量访问韩顺平讲解-创新互联

定界符重新定义 预防在模板中有js css 代码时 smarty模板引擎解析出现错误!

成都创新互联专注于中大型企业的网站设计、成都做网站和网站改版、网站营销服务,追求商业策划与数据分析、创意艺术与技术开发的融合,累计客户近1000家,服务满意度达97%。帮助广大客户顺利对接上互联网浪潮,准确优选出符合自己需要的互联网运用,我们将一直专注品牌网站制作和互联网程序开发,在前进的路上,与客户一起成长!

注意点:

tpl页面模板中参数和值 在 php页面中对应关系。

例如

PHP页面代码 class Dog{     var $arrT;         function __construct($arr){         $this->arrT=$arr;     } } //一维索引数组 $arrA=array('beijing','shanghai','tianjin'); //实例化对象 $dog=new Dog($arrA); $dog->master=$master; $smarty->assign("dog",$dog); $smarty->display("hello.tpl"); TPL页面代码 <{$dog->arrT.city1}>

在PHP页面中Dog类中的成员变量arrT 对应 TPL页面arrT

Dog类中构造方法形式参数$arr

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

定义要传入Dog类参数中的实参$arrA        $arrA=array('beijing','shanghai','tianjin');

在实例化对象时传入实参$arrA                  $dog=new Dog($arrA);

//创建smarty对象 require_once './libs/Smarty.class.php'; $smarty=new Smarty(); $smarty->left_delimiter="<{"; $smarty->right_delimiter="}>";

布尔型boolean

php页面

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

tpl页面

<{$yang_string}>

浏览器

1

整型integer

php页面

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

tpl页面

<{$yang_int}>

浏览器

567

浮点型float

php页面

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

tpl页面

<{$yang_float}>

浏览器

56.7

字符串string

php页面

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

tpl页面

<{$yang_string}>

浏览器

i come from China

数组array 一维索引数组

php页面

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

tpl页面

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

浏览器

beijing||shanghai||tianjin

数组array 一维索引数组

php页面

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

tpl页面

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

浏览器

beijing||上海||天津||

数组array 二维数组 (第一层为索引数组,第二层为索引数组)

php页面

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

tpl页面

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

浏览器

北京||上海||天津||宋江||李逵||卢俊义

数组array 二维数组 (第一层为索引数组,第二层为关联数组)

php页面

//关联二维数组 $arr4=array(     array(      "id"=>"a001",      "name"=>"yang",      "age"=>"33"             ),     array(         "id"=>"a002",         "name"=>"wang",         "age"=>"23"     ) ); $smarty->assign("arr4",$arr4);

tpl页面

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

浏览器

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

数组array 二维数组 (第一层为关联数组,第二层为关联数组)

php页面

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

tpl页面

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

浏览器

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

数组array 二维数组 (第一层为关联数组,第二层为索引数组)

php页面

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

tpl页面

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

浏览器

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

对象object 

php页面

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;     } } //一维索引数组 $arrA=array('beijing','shanghai','tianjin'); //一维关联数组 $arrB=array(     'city1'=>'beijing',  'city2'=>'上海',  'city3'=>'天津' ); $arrC=array(     array(         "id"=>"a001",         "name"=>"yang",         "age"=>"33"     ),     array(         "id"=>"a002",         "name"=>"wang",         "age"=>"23"     ) ); //对象的分配 class Master{     var $name;     var $address; } $master=new Master(); $master->name="津沙港湾"; $master->address="厦门"; //实例化对象 $dog=new Dog("小明",5,"红色",$arrA,$arrC); $dog->master=$master; $smarty->assign("dog",$dog); $smarty->display("hello.tpl");

tpl页面(对象成员,对象中一维索引数组,对象中二维数组,对象中对象的属性)

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

浏览器

小明||5||红色 shanghai yang 津沙港湾

php页面 (对象中参数传入是一维关联数组$arrB)

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

tpl页面(对象中一维关联数组)

<{$dog->arrT.city1}>

浏览器

beijing

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


本文名称:PHPSmarty模板变量访问韩顺平讲解-创新互联
文章起源:http://scyanting.com/article/djhjij.html