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 相关文章推荐
PHP 中的类
Oct 09 PHP
php类
Nov 27 PHP
php数组应用之比较两个时间的相减排序
Aug 18 PHP
php 采集书并合成txt格式的实现代码
Mar 01 PHP
PHP配置把错误日志以邮件方式发送方法(Windows系统)
Jun 23 PHP
[原创]php逐行读取txt文件写入数组的方法
Jul 02 PHP
浅谈php7的重大新特性
Oct 23 PHP
php ajax数据传输和响应方法
Aug 21 PHP
实例解析php的数据类型
Oct 24 PHP
PHP检查URL包含特定字符串实例方法
Feb 11 PHP
ThinkPHP 5.1 跨域配置方法
Oct 11 PHP
CentOS7系统搭建LAMP及更新PHP版本操作详解
Mar 26 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
destoon实现调用图文新闻的方法
2014/08/21 PHP
PHP验证信用卡卡号是否正确函数
2015/05/27 PHP
jquery 表单取值常用代码
2009/12/22 Javascript
跨浏览器开发经验总结(四) 怎么写入剪贴板
2010/05/13 Javascript
Extjs中通过Tree加载右侧TabPanel具体实现
2013/05/05 Javascript
JS防止用户多次提交的简单代码
2013/08/01 Javascript
动态显示可输入的字数提示还可以输入的字数
2014/04/01 Javascript
JavaScript实现的字符串replaceAll函数代码分享
2015/04/02 Javascript
JavaScript 七大技巧(一)
2015/12/13 Javascript
php基于redis处理session的方法
2016/03/14 Javascript
jQuery设置聚焦并使光标位置在文字最后的实现方法
2016/08/02 Javascript
聊一聊jQuery插件uploadify使用方法
2016/08/24 Javascript
Angular使用$http.jsonp发送跨站请求的方法
2017/03/16 Javascript
jQuery结合jQuery.cookie.js插件实现换肤功能示例
2017/10/14 jQuery
Vue.js实现可配置的登录表单代码详解
2018/03/29 Javascript
element-ui 表格数据时间格式化的方法
2018/08/24 Javascript
微信小程序点击顶部导航栏切换样式代码实例
2019/11/12 Javascript
Nodejs文件上传、监听上传进度的代码
2020/03/27 NodeJs
python基础教程之Hello World!
2014/08/29 Python
python实现得到一个给定类的虚函数
2014/09/28 Python
Python二维码生成库qrcode安装和使用示例
2014/12/16 Python
使用相同的Apache实例来运行Django和Media文件
2015/07/22 Python
PyQt5图形界面播放音乐的实例
2019/06/17 Python
python实现简单学生信息管理系统
2020/04/09 Python
Python脚本打包成可执行文件过程解析
2020/10/20 Python
纯css3制作煽动翅膀的蝴蝶的示例
2018/04/23 HTML / CSS
CSS3实现彩色进度条动画的示例
2020/10/29 HTML / CSS
Stefania Mode美国:奢华设计师和时尚服装
2018/01/07 全球购物
swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上
2013/07/06 面试题
行政主管岗位职责
2013/11/18 职场文书
网络信息安全承诺书
2014/03/26 职场文书
学历证明样本
2015/06/16 职场文书
Python办公自动化PPT批量转换操作
2021/09/15 Python
mysql事务对效率的影响分析总结
2021/10/24 MySQL
muduo TcpServer模块源码分析
2022/04/26 Redis
python基础之//、/与%的区别详解
2022/06/10 Python