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 相关文章推荐
PHP调用三种数据库的方法(3)
Oct 09 PHP
php 全局变量范围分析
Aug 07 PHP
Fatal error: session_start(): Failed to initialize storage module: files问题解决方法
May 04 PHP
ThinkPHP实现带验证码的文件上传功能实例
Nov 01 PHP
php树型类实例
Dec 05 PHP
php建立Ftp连接的方法
Mar 07 PHP
浅谈PDO的rowCount函数
Jun 18 PHP
WordPress迁移时一些常见问题的解决方法整理
Nov 24 PHP
在WordPress中使用wp_count_posts函数来统计文章数量
Jan 05 PHP
PHP发送AT指令实例代码
May 26 PHP
php实现URL加密解密的方法
Nov 17 PHP
PHP多进程编程实例详解
Jul 19 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中防止直接访问或查看或下载config.php文件的方法
2012/07/07 PHP
php curl 上传文件代码实例
2015/04/27 PHP
Laravel5.1数据库连接、创建数据库、创建model及创建控制器的方法
2016/03/29 PHP
Yii2针对指定url的生成及图片等的引入方法小结
2016/07/18 PHP
Linux系统中为php添加pcntl扩展
2016/08/28 PHP
javascript抖动元素的小例子
2013/10/28 Javascript
设置jsf的选择框h:selectOneMenu为不可编辑状态的方法
2014/01/07 Javascript
使用jquery中height()方法获取各种高度大全
2014/04/02 Javascript
基于MVC5和Bootstrap的jQuery TreeView树形控件(二)之数据支持json字符串、list集合
2016/08/11 Javascript
Vue.js:使用Vue-Router 2实现路由功能介绍
2017/02/22 Javascript
Node.js自定义实现文件路由功能
2017/09/22 Javascript
让bootstrap的carousel支持滑动滚屏的实现代码
2017/11/27 Javascript
重新认识vue之事件阻止冒泡的实现
2018/08/02 Javascript
微信小程序自定义键盘 内部虚拟支付
2018/12/20 Javascript
Vue页面切换和a链接的本质区别详解
2019/11/12 Javascript
Element Input输入框的使用方法
2020/07/26 Javascript
Python实现端口复用实例代码
2014/07/03 Python
利用python实现简单的循环购物车功能示例代码
2017/07/05 Python
pytorch 数据集图片显示方法
2018/07/26 Python
对python_discover方法遍历所有执行的用例详解
2019/02/13 Python
OpenCV-Python 摄像头实时检测人脸代码实例
2019/04/30 Python
50行Python代码获取高考志愿信息的实现方法
2019/07/23 Python
Python人工智能之路 之PyAudio 实现录音 自动化交互实现问答
2019/08/13 Python
女士鞋子、包包和服装在线,第一款10美元:ShoeDazzle
2019/07/26 全球购物
开会迟到检讨书
2014/02/03 职场文书
一夜的工作教学反思
2014/02/08 职场文书
大学军训感言600字
2014/02/25 职场文书
志愿者服务感言
2014/02/27 职场文书
服装设计专业毕业生求职信
2014/04/09 职场文书
《狼和小羊》教学反思
2014/04/20 职场文书
求职信结尾怎么写
2014/05/26 职场文书
人身意外保险授权委托书
2014/10/01 职场文书
土地租赁协议书
2015/01/29 职场文书
商场营业员岗位职责
2015/04/14 职场文书
2015年小学体育教师工作总结
2015/10/23 职场文书
python操作xlsx格式文件并读取
2021/06/02 Python