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


Posted in PHP onMarch 30, 2015

本文实例讲述了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/>

浏览器显示结果:

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

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/>

浏览器显示结果:

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

三、分配复合数据之对象

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/>

浏览器显示结果

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

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

PHP 相关文章推荐
网络资源
Oct 09 PHP
用PHP函数解决SQL injection
Dec 09 PHP
php不用正则采集速度探究总结
Mar 24 PHP
深入php 正则表达式的学习探讨
Jun 06 PHP
PHP采集类Snoopy抓取图片实例
Jun 19 PHP
ThinkPHP之R方法实例详解
Jun 20 PHP
php计算函数执行时间的方法
Mar 20 PHP
利用PHP命令行模式采集股票趋势信息
Aug 09 PHP
在Mac OS下搭建LNMP开发环境的步骤详解
Mar 10 PHP
PHP实现微信申请退款功能
Oct 01 PHP
php ActiveMQ的安装与使用方法图文教程
Feb 23 PHP
Laravel中GraphQL接口请求频率实战记录
Sep 01 PHP
php生成不重复随机数、数组的4种方法分享
Mar 30 #PHP
smarty模板引擎基础知识入门
Mar 30 #PHP
php array_merge函数使用需要注意的一个问题
Mar 30 #PHP
PHP CodeIgniter框架的工作原理研究
Mar 30 #PHP
PHP实现动态柱状图改进版
Mar 30 #PHP
PHP动态柱状图实现方法
Mar 30 #PHP
php实现的一个简单json rpc框架实例
Mar 30 #PHP
You might like
php中邮箱地址正则表达式实现与详解
2012/04/24 PHP
JavaScript Eval 函数使用
2010/03/23 Javascript
简单几行JS Code实现IE邮件转发新浪微博
2013/07/03 Javascript
javascript中的document.open()方法使用介绍
2013/10/09 Javascript
axios基本入门用法教程
2017/03/25 Javascript
VUE + UEditor 单图片跨域上传功能的实现方法
2018/02/08 Javascript
vue组件中的数据传递方法
2018/05/14 Javascript
深入浅析Vue 中 ref 的使用
2019/04/29 Javascript
Js逆向实现滑动验证码图片还原的示例代码
2020/03/10 Javascript
vue项目中使用bpmn为节点添加颜色的方法
2020/04/30 Javascript
jquery实现加载更多&quot;转圈圈&quot;效果(示例代码)
2020/11/09 jQuery
python 中if else 语句的作用及示例代码
2018/03/05 Python
Python实现字符串的逆序 C++字符串逆序算法
2020/05/28 Python
python 将md5转为16字节的方法
2018/05/29 Python
python实时监控cpu小工具
2018/06/21 Python
Flask框架响应、调度方法和蓝图操作实例分析
2018/07/24 Python
为何人工智能(AI)首选Python?读完这篇文章你就知道了(推荐)
2019/04/06 Python
pycharm无法导入本地模块的解决方式
2020/02/12 Python
Python selenium爬虫实现定时任务过程解析
2020/06/08 Python
HTTP状态码详解
2021/03/18 杂记
HTML5 Canvas实现图片缩放、翻转、颜色渐变的代码示例
2016/02/28 HTML / CSS
html5中audio支持音频格式的解决方法
2018/08/24 HTML / CSS
美国在线购买内衣网站:HerRoom
2020/02/22 全球购物
adidas泰国官网:adidas TH
2020/07/11 全球购物
捷科时代的软件测试笔试题
2015/11/09 面试题
J2ee常用的设计模式?说明工厂模式
2015/05/21 面试题
摄影助理岗位职责
2014/02/07 职场文书
公司授权委托书
2014/04/04 职场文书
规范化管理年活动总结
2014/08/29 职场文书
业务员辞职信范文
2015/03/02 职场文书
关于职业道德的心得体会
2016/01/18 职场文书
小学思品教学反思
2016/02/20 职场文书
小学毕业教师寄语
2019/06/21 职场文书
全面盘点MySQL中的那些重要日志文件
2021/11/27 MySQL
vue-cli3.x配置全局的scss的时候报错问题及解决
2022/04/30 Vue.js
Hive HQL支持2种查询语句风格
2022/06/25 数据库