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 相关文章推荐
PHP5/ZendEngine2的改进
Oct 09 PHP
一次编写,随处运行
Oct 09 PHP
ThinkPHP模板IF标签用法详解
Jul 01 PHP
PHP 实现类似js中alert() 提示框
Mar 18 PHP
php自定义错误处理用法实例
Mar 20 PHP
smarty中常用方法实例总结
Aug 07 PHP
PHP 实现的将图片转换为TXT
Oct 21 PHP
必须收藏的23个php实用代码片段
Feb 02 PHP
php使用ftp远程上传文件类(完美解决主从文件同步问题的方法)
Sep 23 PHP
PHP开发中解决并发问题的几种实现方法分析
Nov 13 PHP
PHP实现文件上传后台处理脚本
Mar 04 PHP
ThinkPHP 框架实现的读取excel导入数据库操作示例
Apr 14 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源代码
2013/06/26 PHP
php判断访问IP的方法
2015/06/19 PHP
php导出csv文件,可导出前导0实例代码
2016/11/16 PHP
PHPMailer发送邮件
2016/12/28 PHP
Yii2实现增删改查后留在当前页的方法详解
2017/01/13 PHP
基于thinkPHP3.2实现微信接入及查询token值的方法
2017/04/18 PHP
php中用unset销毁变量并释放内存
2020/05/10 PHP
ExtJS Grid使用SimpleStore、多选框的方法
2009/11/20 Javascript
JavaScript页面刷新与弹出窗口问题的解决方法
2010/03/02 Javascript
js操作时间(年-月-日 时-分-秒 星期几)
2010/06/20 Javascript
javascript操作html控件实例(javascript添加html)
2013/12/02 Javascript
jquery实现相册一下滑动两次的方法
2015/02/09 Javascript
基于jQuery倾斜打开侧边栏菜单特效代码
2015/09/15 Javascript
关于vue.js弹窗组件的知识点总结
2016/09/11 Javascript
Vue.js第一天学习笔记(数据的双向绑定、常用指令)
2016/12/01 Javascript
原生javascript AJAX 三级联动的实现代码
2018/05/04 Javascript
Vue项目部署在Spring Boot出现页面空白问题的解决方案
2018/11/26 Javascript
详解VUE调用本地json的使用方法
2019/05/15 Javascript
详解Typescript 内置的模块导入兼容方式
2020/05/31 Javascript
浅谈JavaScript中你可能不知道URL构造函数的属性
2020/07/13 Javascript
如何在VUE中使用vue-awesome-swiper
2021/01/04 Vue.js
Python脚本实现网卡流量监控
2015/02/14 Python
Python进阶篇之字典操作总结
2016/11/16 Python
python的numpy模块安装不成功简单解决方法总结
2017/12/23 Python
python创造虚拟环境方法总结
2019/03/04 Python
Python增强赋值和共享引用注意事项小结
2019/05/28 Python
用Python配平化学方程式的方法
2019/07/20 Python
Python实现大数据收集至excel的思路详解
2020/01/03 Python
python中使用input()函数获取用户输入值方式
2020/05/03 Python
澳大利亚药房在线:ThePharmacy
2017/10/04 全球购物
电子商务专业毕业生求职信
2014/06/12 职场文书
大学新生军训自我鉴定范文
2014/09/13 职场文书
教师三严三实学习心得体会
2014/10/11 职场文书
2014年健康教育工作总结
2014/11/20 职场文书
2014年会计主管工作总结
2014/12/20 职场文书
2015年计算机教学工作总结
2015/07/22 职场文书