smarty模板引擎中变量及变量修饰器用法实例


Posted in PHP onJanuary 22, 2015

本文实例讲述了smarty变量及变量修饰器的应用。分享给大家供大家参考。具体如下:

模板文件:temp.htm:

{config_load file="foo.conf"}

{$name.na1|cat:$name['na2']}

{$name['na1']|cat:'与'|cat:$name.na2}

{foreach from=$name item=na}

{$na}

{/foreach}

{$dog->leee()}{$dog->name}

<script>

{literal}

function foobar{

 alert('foobar!');

}

{/literal}

</script>

<title>{#pageTitle#}</title>

<body bgcolor="{#bodyBgColor#}">

<table border="{#tableBorderSize#}" bgcolor="{#tableBgColor#}" >

 <tr bgcolor="{#rowBgColor#}">

  <td>dosomething</td>

  <td>帅锅</td>

 </tr>

</table>

{$smarty.server.SERVER_NAME}

<hr />

{$str|count_words}

<hr />

-------常量--------<br>

{$smarty.now}<br />{$smarty.const.MY_CONST}<br />{$smarty.template}<br />{$smarty.current_dir}<br />{$smarty.version}<br />{$smarty.ldelim|cat:$smarty.rdelim}

<hr />

{$smarty.now|date_format:$config}

{$yesterday|date_format:'Y-m-d'}

<hr />

{$string|default:'default变量修饰:smarty学习'}

<hr />

{$str1|escape:'html'}<br />{$str2|escape:'mail'}

<hr />

<p>{$str1|indent|upper}</p>

{$str1|nl2br}

<hr />

{$str1|regex_replace:"/@\d{3}/":"ABC"}<br />

{$str1|replace:"163":"sina"}<br />

{$str1|spacify}<br />

<hr />

{$number|string_format:"%.2f"}<br />

{$number|string_format:"%d"}<br />

<hr />

{$str3|strip:"|"}<br />

去除包含在<>之间的字符:{$str3|strip_tags}<br />

截取长度:{$str3|truncate:10:"...":true}<br />

按长度换行:{$str3|wordwrap:30:"<br />"}

<hr />

{append var='name' value="Bob" index="first"}

{append var='name' value="John" index="last"}

{$name.last}<br />

{foreach from=$family item=home}

{foreach from=$home item=person}

{$person}

{/foreach}

{/foreach}

{$family[1].girl}

<hr />

{assign var="name" value="张三丰"}

{$name}

</body>

php文件:index.php

<?php

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

$smarty = new Smarty();

$smarty->setTemplateDir($_SERVER['DOCUMENT_ROOT']."/php/templates/");

$smarty->setCompileDir($_SERVER['DOCUMENT_ROOT']."/php/templates_c/");

$smarty->setCacheDir($_SERVER['DOCUMENT_ROOT']."/php/cache/");

$smarty->caching = false;

$arr = array("na1"=>"帅锅","na2"=>"美女");

$smarty->assign("name",$arr);
class Dog{

 public $name;

 public $age;

 function leee(){

  return $this->name."在干吗";

 }

}

$dog = new Dog();

$dog->name="小狗";

$smarty->assign("dog",$dog);
//$str = "hello world,i am here. i love smarty!";

$str = "帅锅";

$str1 = "<a href='http://www.sina.com/'>新浪</a> And\n aassu@163.com";

$str2 = "aassu@163.com";

$smarty->assign("str",$str);

$smarty->assign("str1",$str1);

$smarty->assign("str2",$str2);

$smarty->assign("number",30.293934);

$smarty->assign("str3","akie abfal   <a;fa>,dooerw,show databases,desc table");
$config = "Y-m-d H:i:s";

$smarty->assign("config",$config);

$smarty->assign("yesterday",strtotime('-1 day'));

//常量

define("MY_CONST","百度");
//append成员方法的使用

$family = array("husband"=>"帅锅","wife"=>"美女");

$famiadd = array("boy"=>"张三丰","girl"=>"王昭君");

$smarty->append("family",$family);

$smarty->append("family",$famiadd);

echo "<pre>";

print_r($family);

$smarty->display("temp.htm");

?>

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

PHP 相关文章推荐
BBS(php &amp; mysql)完整版(七)
Oct 09 PHP
smarty+adodb+部分自定义类的php开发模式
Dec 31 PHP
php 团购折扣计算公式
Nov 24 PHP
JS异常处理try..catch语句的作用和实例
May 05 PHP
PHP封装的HttpClient类用法实例
Jun 17 PHP
php实现将Session写入数据库
Jul 26 PHP
PHP目录操作实例总结
Sep 27 PHP
PHP GD库相关图像生成和处理函数小结
Sep 30 PHP
PHP使用Redis长连接的方法详解
Feb 12 PHP
使用PHP反射机制来构造&quot;CREATE TABLE&quot;的sql语句
Mar 21 PHP
php 比较获取两个数组相同和不同元素的例子(交集和差集)
Oct 18 PHP
如何用PHP实现分布算法之一致性哈希算法
May 26 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
javascript数组与php数组的地址传递及值传递用法实例
Jan 22 #PHP
You might like
php 获取客户端的真实ip
2009/11/30 PHP
PHP中的日期时间处理利器实例(Carbon)
2017/06/09 PHP
php脚本守护进程原理与实现方法详解
2017/07/20 PHP
PHP与JavaScript针对Cookie的读写、交互操作方法详解
2017/08/07 PHP
php使用gearman进行任务分发操作实例详解
2020/02/26 PHP
把textarea中字符串里含有的回车换行替换成&amp;lt;br&amp;gt;的javascript代码
2007/04/20 Javascript
jquery validation插件表单验证的一个例子
2010/03/03 Javascript
js实现addClass,removeClass,hasClass的函数代码
2011/07/13 Javascript
jQuery1.6 使用方法一
2011/11/23 Javascript
jQuery中获取checkbox选中项等操作及注意事项
2013/11/24 Javascript
在JavaScript中判断整型的N种方法示例介绍
2014/06/18 Javascript
jQuery插件简单实现方法
2015/07/18 Javascript
window.location.hash知识汇总
2015/11/09 Javascript
js实现跨域访问的三种方法
2015/12/09 Javascript
jQuery EasyUi实战教程之布局篇
2016/01/26 Javascript
Vue自定义指令封装节流函数的方法示例
2018/07/09 Javascript
Vue在页面数据渲染完成之后的调用方法
2018/09/11 Javascript
如何利用nodejs自动定时发送邮件提醒(超实用)
2020/12/01 NodeJs
python中as用法实例分析
2015/04/30 Python
Python 使用list和tuple+条件判断详解
2019/07/30 Python
在notepad++中实现直接运行python代码
2019/12/18 Python
TensorFlow Saver:保存和读取模型参数.ckpt实例
2020/02/10 Python
python 解决print数组/矩阵无法完整输出的问题
2020/02/19 Python
Django ORM 查询表中某列字段值的方法
2020/04/30 Python
Python 添加文件注释和函数注释操作
2020/08/09 Python
Python连接mysql方法及常用参数
2020/09/01 Python
在Pycharm中安装Pandas库方法(简单易懂)
2021/02/20 Python
本科生求职简历的自我评价
2013/10/21 职场文书
八年级生物教学反思
2014/01/22 职场文书
生育关怀行动实施方案
2014/03/26 职场文书
党风廉政承诺书
2014/03/27 职场文书
应届生求职自荐信范文
2014/04/07 职场文书
工作失误检讨书范文
2015/01/26 职场文书
高中班主任心得体会
2016/01/07 职场文书
《夹竹桃》教学反思
2016/02/23 职场文书
导游词之任弼时故居
2020/01/07 职场文书