php smarty $$,smarty模板的数据变量有哪些,又该如何调用?

定义:模板变量,即在模板中被分配的变量,以及如何使用Smarty规则在模板中解析变量。

在Smarty模板中,我们将模板中的变量分为三类。PHP分配变量,即利用assign方法分配的变量。

smarty保留变量,包括超全局预定义变量和smarty的内置变量。

自定义变量,用户在模板中去定义变量。

1.PHP分配变量,理论上PHP可以分配任意数据类型给模板进行解析,通常数据其实也就三种:标量数据:直接使用标记输出的数据。

数组数据:在smarty模板中可以使用下标或者通过"."+下标来实现。

对象数据:在smarty模板中是通过对象访问符来实现访问。<?php

require 'smarty/Smarty.class.php';

$smarty=new Smarty();

// $smarty->left_delimiter="

// $smarty->right_delimiter="}>";

$smarty->template_dir = 'templates/'; //实际模板所在目录,如果没有会在根目录下查找

//普通数据

$smarty->assign('hello',"hello world");

//数组

$smarty->assign('arr1',array(1412,14,23,456));

$smarty->assign('arr2',array('name'=>'张三','sex'=>'男'));

//对象

class Person{

public $name='陈平安';

public $perr='saber';

}

$smarty->assign('object1',new Person());

$smarty->display('model.html');

?>//模板 model.html

{$hello}这是templates下面的模板

这是索引数组:{$arr1[0]}---{$arr1[1]}------{$arr1[2]}

这是索引数组:{$arr1.0}---{$arr1.1}------{$arr1.2}

这是关联数组:{$arr2.name}-----{$arr2.sex}

这是对象:{$object1->name}-----------{$object1->perr}

2.Smarty保留变量:是smarty考虑到用户会需要经常使用的系统变量,或者内部变量。这类变量通常以$smarty开始,然后是各类关键字,多次访问。GET数据:{$smarty.get.名字}

POST数据:{$smarty.post.名字}

session数据:{$smarty.session.名字}

cookie数据:{$smarty.cookies.名字}

REQUEST数据:{$smarty.request.名字}

server数据:{$smarty.server.大写名字}

时间戳:{$smarty.now}

模板路径:{$smarty.current_dir}

模板名字:{$smarty.template}

配置文件:{$smarty.config.配置名}

GET数据:{$smarty.get.name}

POST数据:{$smarty.post.name}

session数据:{$smarty.session.username}

cookie数据:{$smarty.cookies.username}

REQUEST数据:{$smarty.request.name}

server数据:{$smarty.server.SERVER_NAME}

时间戳:{$smarty.now}

模板路径:{$smarty.current_dir}

模板名字:{$smarty.template}

3.自定义变量:Smarty为了在模板中可以灵活的对数据进行处理,允许设置变量:{assign var='变量名' value='变量值'}。

{assign var='name' value='Sun'}

{$name}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值