smarty模板引擎之分配数据类型

5年以前  |  阅读数:1025 次  |  编程语言:PHP 

本文实例讲述了smarty模板引擎之分配数据类型用法。分享给大家供大家参考。具体分析如下:

一、分配基本数据


    //分配基本数据
    $smarty->assign("str","hello smarty!");
    $smarty->assign("int",143);
    $smarty->assign("double",12.1344);
    $smarty->assign("bool",true);
    $smarty->assign("bool2",false); 
    字符串类型:<{$str}> <br/>
    整型:<{$int}> <br/>
    浮点型:<{$double}> <br/>
    布尔类型真:<{$bool}> <br/>
    布尔类型假:<{$bool2}> <br/> 

浏览器显示结果:

1表示真,0表示假,假的时候为null,什么都不显示。

二、分配复合数据之数组


    //索引数组 
    $res=array('上海','北京','深圳');
    $smarty->assign("arr",$res);
    //关联数组
    $res2=array('city1'=>'北京','city2'=>'广州','city3'=>'湖南');
    $smarty->assign("arr2",$res2); 
    //索引二维数组
    $res3 = array( 
      array('潇晓','常山','吴蓓'),array('珊珊','常明')
    ); 
    $smarty->assign("arr3",$res3); 
    //关联二维数组 
    $res4 = array( 
      array('id'=>'001','name'=>'张三','email'=>'zhangsan@1163.com'),
      array('url'=>'http://www.baidu.com','age'=>'28')
    ); 
    $smarty->assign("arr4",$res4); 
    //关联二维数组2 
    $res5=array( 
      'emp1'=>array('id'=>'001','name'=>'张三','email'=>'zhangsan@1163.com'),
      'emp2'=>array('url'=>'http://www.baidu.com','age'=>'28')
    ); 
    $smarty->assign("arr5",$res5);

模板文件


    索引数组:元素1:<{$arr[0]}>,元素2:<{$arr[1]}>,元素3:<{$arr[2]}> <br/> 
    关联数组取法1(不推荐):元素1:<{$arr2['city1']}>,元素2:<{$arr2['city2']}>,元素3:<{$arr2['city3']}> <br/> 
    关联数组取法2(推荐):元素1:<{$arr2.city1}>,元素2:<{$arr2.city2}>,元素3:<{$arr2.city3}> <br/> 
    二维索引数组: 
    元素1:<{$arr3[0][0]}>, 
    元素2:<{$arr3[0][1]}>, 
    元素3:<{$arr3[0][2]}>, 
    元素4:<{$arr3[1][0]}>, 
    元素5:<{$arr3[1][1]}> <br/> 
    关联二维数组形式1: 
    id-<{$arr4[0].id}>, 
    name-<{$arr4[0].name}>, 
    email-<{$arr4[0].email}>, 
    url-<{$arr4[1].url}>, 
    age-<{$arr4[1].age}> <br/> 
    关联二维数组形式2: 
    id-<{$arr5.emp1.id}>, 
    name-<{$arr5.emp1.name}>, 
    email-<{$arr5.emp1.email}>, 
    url-<{$arr5.emp2.url}>, 
    age-<{$arr5.emp2.age}><br/>

浏览器显示结果:

三、分配复合数据之对象


    class Master{ 
      var $name; 
      var $age; 
      function __construct($name,$age){ 
        $this->name=$name; 
        $this->age=$age; 
      } 
    } 
    class Dog{ 
    var $name; 
    var $age; 
    var $color; 
    var $arr; 
    var $master; 
    function __construct($name,$age,$color,$arr6,$master){ 
      $this->name=$name; 
      $this->age=$age; 
      $this->color=$color; 
      $this->arr=$arr6; 
      $this->master=$master; 
      } 
    } 
    $arr6=array('001','002','003'); 
    $master = new Master('小明',22); 
    $dog1 = new Dog('小白',1,'white',$arr6,$master); 
    $smarty->assign("dog",$dog1);

模板文件


    对象:<br/> 
    //基本属性 
    name-<{$dog->name}>, 
    age-<{$dog->age}>, 
    color-<{$dog->color}> <br/> 
    //数组属性 
    arr-<{$dog->arr[0]}>, 
    arr-<{$dog->arr[1]}>, 
    arr-<{$dog->arr[2]}> <br/> 
    //对象属性 
    object-<{$dog->master->name}>, 
    object-<{$dog->master->age}> <br/> 

浏览器显示结果

希望本文所述对大家的php程序设计有所帮助。

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例