smarty模板引擎从php中获取数据的方法


Posted in PHP onJanuary 22, 2015

本文实例讲述了smarty模板引擎从php中获取数据的方法。分享给大家供大家参考。具体如下:

smarty可以分配($smarty->assign)的变量类型:所有php支持的数据类型——基本数据类型、复合数据类型、特殊数据类型(具体见smarty相关手册)。

操作/显示文件:index.php

<?php

//创建smarty对象

require_once("./libs/Smarty.class.php");

$smarty = new Smarty();

$smarty->assign("aa","hello word");//分配字符串

$smarty->assign("bb",123);//分配整型

$smarty->assign("cc",90.8);//分配float型,浮点型

$smarty->assign("dd",true);//分配字符串

//分配数组,数组一般从数据库取出,这里直接给数组

$arr1 = array("北京","上海","广州");//索引数组

$smarty->assign("arr1",$arr1);//分配索引数组
$arr2 = array("city1"=>"北京","city2"=>"上海","city3"=>"广州");//关联数组

$smarty->assign("arr2",$arr2);//分配关联数组
$arr3 = array(array("北京","上海","广州"),array("关羽","张飞","美女"));

$smarty->assign("arr3",$arr3);
$arr4 = array("aa"=>array("北京","上海","广州"),"bb"=>array("关羽","张飞","美女"));

$smarty->assign("arr4",$arr4);
//对象类型

class Master{

 public $name;

 public $address;

}

$master = new Master();

$master->name="百度";

$master->address = "中关村";

class Dog{

 public $name;

 public $age;

 public $color;

 public $arr;

 public $master;

 function __construct($name,$age,$color,$arr){

  $this->name = $name;

  $this->age = $age;

  $this->color = $color;

  $this->arr = $arr;

 }

}

$dog = new Dog("小狗",4,"金黄色",$arr2);

$dog->master = $master;

$smarty->assign("dog",$dog);
$smarty->display("index.tpl");

?>

模板文件:index.tpl

<html>

<h2>smarty变量操作</h2>

<p style="color:green;">取字符串:{$aa}</p>

<p style="color:red;">取整数:{$bb}</p>

<p style="color:blue;">取浮点型:{$cc}</p>

<p style="color:orange;">取布尔值:{$dd}</p>

<p style="color:indigo;">取数组(索引数组):{$arr1[0]}--{$arr1[1]}--{$arr1[2]}</p>

<p style="color:green;">取数组(关联数组):{$arr2.city1}--{$arr2.city2}--{$arr2.city3}</p>

<p style="color:red;">取二组数组(索引,取单个):{$arr3[0][0]}</p>

<p style="color:red;">取二组数组(索引,遍历全部):</p>

<p style="color:blue;">取二维数组(关联):{$arr4.aa[2]}</p>

<p style="color:blue;">取二维数组(关联、遍历):</p>

<p style="color:orange;">取对象(普通属性):{$dog->name}</p>

<p style="color:orange;">取对象(数组属性):{$dog->arr.city1}</p>

<p style="color:orange;">取对象(对象属性):{$dog->master->name}</p>

</html>

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

PHP 相关文章推荐
使用zend studio for eclipse不能激活代码提示功能的解决办法
Oct 11 PHP
mac下使用brew配置环境的步骤分享
May 23 PHP
php.ini中date.timezone设置分析
Jul 29 PHP
php的$_FILES的临时储存文件与回收机制实测过程
Jul 12 PHP
php隐藏IP地址后两位显示为星号的方法
Nov 21 PHP
深入解析PHP中foreach语句控制数组循环的用法
Nov 30 PHP
PHP在linux上执行外部命令的方法
Feb 06 PHP
php输出图像的方法实例分析
Feb 16 PHP
thinkphp中的多表关联查询的实例详解
Oct 12 PHP
PHP实现的操作数组类库定义与用法示例
May 24 PHP
详解Laravel设置多态关系模型别名的方式
Oct 17 PHP
PHP中echo与print区别点整理
Mar 09 PHP
smarty模板引擎中变量及变量修饰器用法实例
Jan 22 #PHP
smarty内置函数capture用法分析
Jan 22 #PHP
smarty内置函数config_load用法实例
Jan 22 #PHP
smarty内置函数foreach用法实例
Jan 22 #PHP
smarty内置函数{loteral}、{ldelim}和{rdelim}用法实例
Jan 22 #PHP
smarty内置函数section的用法
Jan 22 #PHP
smarty自定义函数htmlcheckboxes用法实例
Jan 22 #PHP
You might like
用PHP实现递归循环每一个目录
2010/08/08 PHP
Views rows style模板重写代码
2011/05/16 PHP
第4章 数据处理-php正则表达式-郑阿奇(续)
2011/07/04 PHP
php curl post 时出现的问题解决
2014/01/30 PHP
PHP实现抓取Google IP并自动修改hosts文件
2015/02/12 PHP
thinkphp实现分页显示功能
2016/12/03 PHP
PHP数字前补0的自带函数sprintf 和number_format的用法(详解)
2017/02/06 PHP
用脚本调用样式的几种方法
2006/12/09 Javascript
JQuery 1.6发布 性能提升,同时包含大量破坏性变更
2011/05/10 Javascript
js中function()使用方法
2013/12/24 Javascript
DIV始终居中的js代码
2014/02/17 Javascript
关于Javascript加载执行优化的研究报告
2014/12/16 Javascript
JavaScript——DOM操作——Window.document对象详解
2016/07/14 Javascript
JS 获取HTML标签内的子节点的方法
2016/09/21 Javascript
Vue-router路由判断页面未登录跳转到登录页面的实例
2017/10/26 Javascript
使用Vue组件实现一个简单弹窗效果
2018/04/23 Javascript
原生JS实现简单的无缝自动轮播效果
2018/09/26 Javascript
独立部署小程序基于nodejs的服务器过程详解
2019/06/24 NodeJs
Flutter 超实用简单菜单弹出框 PopupMenuButton功能
2019/08/06 Javascript
简单实现节流函数和防抖函数过程解析
2019/10/08 Javascript
Python with用法实例
2015/04/14 Python
Python中字典的基础知识归纳小结
2015/08/19 Python
Python中pygame安装方法图文详解
2015/11/11 Python
Python实现将数据写入netCDF4中的方法示例
2018/08/30 Python
Python requests模块实例用法
2019/02/11 Python
python 画二维、三维点之间的线段实现方法
2019/07/07 Python
Python for循环搭配else常见问题解决
2020/02/11 Python
Python抖音快手代码舞(字符舞)的实现方法
2021/02/07 Python
东南亚旅游平台:The Trip Guru
2018/01/01 全球购物
印度最大的时尚购物网站:Myntra
2018/09/13 全球购物
linux面试题参考答案(10)
2013/11/04 面试题
元旦晚会主持词
2014/03/24 职场文书
农村门前三包责任书
2014/07/25 职场文书
教师节联欢会主持词
2015/07/04 职场文书
.Net Core导入千万级数据至Mysql的步骤
2021/05/24 MySQL
关于Oracle12C默认用户名system密码不正确的解决方案
2021/10/16 Oracle