变量
模板变量以美元符号$开头,由字母、数组和下划线组成,和 PHP variable相似。 变量可以引用数字索引或非数字索引的数组,对象的属性和方法等。 配置变量 是例外的,它不是以美元符号$开头,而是放到两个井号中间#hashmarks#, 或者通过 $smarty.config来使用。 Example 3.2. 变量 {$foo} <-- 显示简单的变量 (非数组/对象)
{$foo[]} <-- 在0开始索引的数组中显示第五个元素
{$foo.bar} <-- 显示"bar"下标指向的数组值,等同于PHP的$foo['bar']
{$foo.$bar} <-- 显示以变量$bar值作为下标指向的数组值,等同于PHP的$foo[$bar]
{$foo->bar} <-- 显示对象属性 "bar"
{$foo->bar()} <-- 显示对象成员方法"bar"的返回
{#foo#} <-- 显示变量配置文件内的变量"foo"
{$smarty.config.foo} <-- 等同于{#foo#}
{$foo[bar]} <-- 仅在循环的语法内可用,见{section}
{assign var=foo value='baa'}{$foo} <-- 显示"baa", 见{assign} 更多合成变量的方式: {$foo.bar.baz}
{$foo.$bar.$baz}
{$foo[].baz}
{$foo[].$baz}
{$foo.bar.baz[]}
{$foo->bar($baz,,$bar)} <-- 传递参数
{"foo"} <-- 静态值 {* 显示服务器的环境变量"SERVER_NAME" ($_SERVER['SERVER_NAME'])*}
{$smarty.server.SERVER_NAME} 数学运算和嵌入标签: {$x+$y} // 显示x加y的和
{assign var=foo value=$x+$y} // 和用于赋值
{$foo[$x+]} // 作为下标使用
{$foo={counter}+} // 标签内的标签
{$foo="this is message {counter}"} // 在双引号内的标签 定义数组: {assign var=foo value=[,,]}
{assign var=foo value=['y'=>'yellow','b'=>'blue']}
{assign var=foo value=[,[,],]} // 可嵌套 缩写方式: {$foo=$bar+}
{$foo = strlen($bar)} // 函数赋值
{$foo = myfunct( ($x+$y)* )} // 函数参数
{$foo.bar=} // 赋值给特定的数组元素
{$foo.bar.baz=}
{$foo[]=} // 附加到数组 Smarty 点号语法: {$foo.a.b.c} => $foo['a']['b']['c']
{$foo.a.$b.c} => $foo['a'][$b]['c'] // 变量下标
{$foo.a.{$b+}.c} => $foo['a'][$b+]['c'] // 表达式下标
{$foo.a.{$b.c}} => $foo['a'][$b['c']] // 嵌套下标 类似PHP的语法,另一种点号的语法: {$foo[]} // 一般的
{$foo['bar']}
{$foo['bar'][]}
{$foo[$x+$x]} // 下标可以是各种表达式
{$foo[$bar[]]} // 嵌套下标
{$foo[section_name]} // smarty {section} 存取, 非数组存取! 变量构造变量: $foo // 一般的变量
$foo_{$bar} // 变量名包含了其他变量
$foo_{$x+$y} // 变量名包含了表达式
$foo_{$bar}_buh_{$blar} // 更复杂的
{$foo_{$x}} // 如$x = 1,那么将显示$foo_1的值 对象链: {$object->method1($x)->method2($y)} PHP函数直接使用: {time()}

SMARTY 变量的更多相关文章

  1. Smarty 变量使用

    Smarty的标签都是使用定界符括起来. 默认定界符是{ 和 }, 但定界符可以被改变. 比如说在本手册,我们会假定你在使用默认的定界符. 在Smarty看来,任何在定界符之外的内容,都是静态的,或者 ...

  2. [smarty] 在smarty模板中使用smarty变量初始化 javascript 变量的问题

    // 总结:// 1/ 在smarty 模板文件中,使用从php中assign过来的smarty变量,一定需要使用双引号或单引号来括住smarty变量,如:var title="<!- ...

  3. smarty变量调节器

    smarty中变量调解器的作用:在模板中需要对PHP分配过来的变量在输出之前,对变量进行处理 注册变量调解器方式:$smarty->registerPlugin("modifier&q ...

  4. smarty变量

    前台: 注释的两种方式:<{**}>和<!--注释html代码-->比如: <{* <div style="width:100px; height:100 ...

  5. smarty 变量调节器

    变量调节器:<{$a|变量调节器}> 了解更多可以查询smarty手册 主要修改此页面的信息来了解变量调节器:main.php/main.html(0603) 1.利用给定的变量调节器 c ...

  6. Smarty 变量修饰器

    为了更方便的实现 功能与显示分离,通常会用 smarty 将功能代码中的数据 assign 到页面中,在页面中合理使用 smarty 的修饰方法,会使页面显示更美观! 一个数据可同时使用多个修饰函数, ...

  7. 常用的smarty变量操作

    php模板引擎smarty的变量操作符可用于操作变量,自定义函数和字符.语法中使用"|"应用变量操作符,多个参数用":"??指簟?/DIV> capita ...

  8. smarty变量调节器与函数

    smarty自带了一些变量调节器与内置函数,都在libs/plugins目录下,变量调节器以modifier开头,函数以function开头,而且我们可以自定义变量调节器与函数,熟练运用之后会极大地提 ...

  9. 6月5 Smarty变量调节器

    变量调节器:<{$a|变量调节器}> 主要修改此页面的信息来了解变量调节器:test0605/main.php和模板文件:main0605.html 1.利用给定的变量调节器 capita ...

随机推荐

  1. 二十四种设计模式:命令模式(Command Pattern)

    命令模式(Command Pattern) 介绍将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化:对请求排队或记录请求日志,以及支持可取消的操作. 示例有一个Message实体类,某个 ...

  2. 【转载】Java NIO学习 & NIO BIO AIO 比较

    可以参考这个页面: http://www.iteye.com/magazines/132-Java-NIO (下面这个页面也有) http://ifeve.com/overview/ 另,在这篇文章里 ...

  3. MySQL分库备份与分表备份

    MySQL分库备份与分表备份 1.分库备份 要求:将mysql数据库中的用户数据库备份,备份的数据库文件以时间命名 脚本内容如下: [root@db01 scripts]# vim backup_da ...

  4. 使用Material Design 创建App翻译系列---列表和卡片集的创建

    上一篇是使用Material Design 创建App翻译系列--材料主题的使用(Using Material Theme),进入正题: 想要在应用里创建Material Design风格的复杂列表和 ...

  5. Maven中的SNAPSHOT版本和正式版本理解

    Maven中建立的依赖管理方式基本已成为Java语言依赖管理的事实标准,Maven的替代者Gradle也基本沿用了Maven的依赖管理机制.在Maven依赖管理中,唯一标识一个依赖项是由该依赖项的三个 ...

  6. svn: warning: xxxx is already under version control

    svn stat  查看当前目录下svn状态 svn remove xxxx svn add xxx svn ci -m "注释"

  7. SQL如何将EXCEL导入到SQL数据库

    1 新建一个EXCEL工作表,注意默认有三个工作簿,我们只在Sheet1中创建几个字段并存储若干值保存为TEST.xls 2运行Excel to MySQL软件,注意Sourece和Destinati ...

  8. sublime HtmlPrettify

    用sublime都快一年多了,终于找到一款称心如意的format工具,可以同时格式化 html css js. HTML-CSS-JS Prettify 如果安装的时候出现问题,多调试调试,改改参数

  9. JMeter 十六:加密处理

    假设采用MD5进行加密 JMeter 内置的没有MD5加密方法.网上有说采用__MD5函数的,但是我在 Jmeter 2.13 以及 Jmeter 3.2 版本上都没有找到这个函数,官方文档也没有看到 ...

  10. Unity3D调用摄像头显示当前拍摄画面

    原地址:http://blog.csdn.net/awnuxcvbn/article/details/18621265 using UnityEngine; using System.Collecti ...