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

本文实例讲述了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程序设计有所帮助。

时间: 2024-10-06 04:26:26

smarty模板引擎从php中获取数据的方法_php实例的相关文章

smarty模板引擎从配置文件中获取数据的方法_php技巧

本文实例讲述了smarty模板引擎从配置文件中获取数据的方法.分享给大家供大家参考.具体如下: 当某个变量值,不希望在程序中写死时,就可以把该变量写到配置文件里,并从中获取(常见的配置样式). 第一步:先写一个配置文件,如数据库的 db.conf,后缀名conf可以随便写,db.ini也行.文件中内容的格式需要固定:key="值",每一行后面不需要添加分号或者什么,直接回国换行,如: 配置文件:db.conf 复制代码 代码如下: host = "localhost"

Symfony2实现在controller中获取url的方法_php实例

本文实例讲述了Symfony2实现在controller中获取url的方法.分享给大家供大家参考,具体如下: // 假设当前URL地址是http://192.168.1.100/demo/web/app_dev.php/m/index $request = $this->getRequest(); // http or https 此处为http $request->getScheme(); // 192.168.1.100 $request->getHttpHost(); // htt

php使用CURL模拟GET与POST向微信接口提交及获取数据的方法_php实例

本文实例讲述了php使用CURL模拟GET与POST向微信接口提交及获取数据的方法.分享给大家供大家参考,具体如下: php CURL函数可以模仿用户进行一些操作,如我们可以模仿用户提交数据也可以模仿用户进行网站访问了,下面我们来介绍利用CURL模拟进行微信接口的GET与POST例子,例子非常的简单就两个: Get提交获取数据 /** * @desc 获取access_token * @return String access_token */ function getAccessToken()

smarty模板中拼接字符串的方法_php实例

PHP页面传到Smarty模板上的变量(这里用,在Smarty上创建两个变量代替) 复制代码 代码如下: {assign var="name" value='Richard.Lee'}{assign var="age" value='27'} 1.想要在Smarty模板的某个位置输出(Richard.Lee---27)拼接方法:{$name|cat:"---"|cat:$age}解释:将变量$name."---".$age 拼

ThinkPHP的模版中调用session数据的方法_php实例

ThinkPHP框架的模板中调用session数据的方法有很多,可以很据情况灵活运用,常见的有以下几类: 1.在模板中直接调用{$Think.session}获取session: 2.在<php></php>标签直接编写php代码来调用$_SESSION数据: 3.在模板中写<?php  ?>,然后在里面直接编写php代码来调用$_SESSION: 4.在Action中将$_SESSION变量通过assign()方法赋值给模板: 5.在自定义函数库中,新建一个函数用来返

twig模板获取全局变量的方法_php实例

本文实例讲述了twig模板获取全局变量的方法.分享给大家供大家参考,具体如下: 简单介绍下,twig是一模板引擎,可以简化php的编写过程,提高效率. 而Symfony模板里,就自带了twig这一模板引擎. twig的语法用的多的,也就三种,也是比较容易的 1.{{..}},这个在twig里是代表输出变量的意思,举个例子: {{ id }} 2.{%-%},这个在twig里代表的是进行判断,举个例子(取自twig官方文档示例): 判断值是否为真: {% if online == false %}

ThinkPHP中使用ajax接收json数据的方法_php实例

本文实例讲述了ThinkPHP中使用ajax接收json数据的方法.分享给大家供大家参考.具体分析如下: 这里通过ThinkPHP+jquery实现ajax,扩展了下,写了个查询,前台代码如下: 首先需要引入jquery.js,主要代码如下: 复制代码 代码如下: function ajax(id,pic){     //由于ThinkPHP不解析JavaScript里的ThinkPHP常量,所以需要先在这里定义. var URL='__URL__';         $.ajax({     

Smarty中调用FCKeditor的方法_php实例

本文实例讲述了Smarty中调用FCKeditor的方法,分享给大家供大家参考.具体实现方法如下: FCKeditor是目前互联网上最好的在线编辑器. smarty是一个使用PHP写出来的模板PHP模板引擎,它提供了逻辑与外在内容的分离,简单的讲,目的就是要使用PHP程序员同美工分离,使用的程序 员改变程序的逻辑内容不会影响到美工的页面设计,美工重新修改页面不会影响到程序的程序逻辑,这在多人合作的项目中显的尤为重要. 在Smarty中调用FCKeditor的文件: 复制代码 代码如下: requ

解析php中获取系统信息的方法_php技巧

$root = getenv('DOCUMENT_ROOT'); ////服务器文档根目录$port = getenv('SERVER_PORT'); ////服务器端口$file = getenv('SCRIPT_NAME'); ////当前执行文件$ua = getenv('HTTP_USER_AGENT'); ////用户UA$method = getenv('REQUEST_METHOD'); ////请求方法$protocol = getenv('SERVER_PROTOCOL');