Smarty模板常见的简单应用分析


Posted in PHP onNovember 15, 2016

本文实例分析了Smarty模板常见的简单应用。分享给大家供大家参考,具体如下:

首先要将smarty这个类包含进来:

include_once '../libs/Smarty.class.php';

然后创一个Smarty对象:

$smarty = new Smarty;

可以自定义Smarty 的开始结束符,默认为{ }

$smarty->left_delimiter ='<<'; //左符号为 <<
$smarty->right_delimiter='>>'; //右符号 为 >>

最重要方法的好像是assign,如:

$smarty->assign('test',$te);
//将$test的值付给test,在模板页tpl中显示用{$test}

又如$arr=array(1,2,3);赋值仍是这样:

$smarty->assign('arr',$arr);

但在模板页显示时要借助foreach 或 section,foreach 用法如下:

{foreach item=item from=$arr key=ke name=foe}
 $item
{/foreach}
//此处的$item相当于$arr[$ke],foreach序列化{$smarty.foreach.foe.iteration}

而section 用法如下:

{section name='test' loop=$arr}
{$smarty.section.name.iteration}//使输出序列化,序号从1开始,index从0开始
{$arr[test]}
{/section}

最后最重要的一步操作千万不要忘记那就是:

$smarty->display('test.tpl');

下面说一些常用东西怎么样的在模板上显示

1.连接操作:

我叫{$str1|cat:"李白"};//输出结果就是:我叫 $str1 李白

2.当前日期:

{$str2|rdate_format:"Y%-m%-d%"} //输出结果格式化$str2日期,形如0000-00-00

3.缩进:

{$str3|indent:8:"*"}  //$str3前缩进8个* 默认缩进的是空格

4.大小写:

{$str4|lower} //$str4的小写形式
{$str4|upper} //$str4的大写形式

过滤:

{$url|escape:"url"} //对$url相关特殊字符进行替换
<tr bgcolor='{cycle values="#EBEBEB,#ACABAB"}'>//tr背景交替 颜色分别为#EBEBEB,#ACABAB

匹配替换:

{$str|regex_replace:"~[0-9]~":"asd"} //如果$str匹配[0-9]输出asd

替换

{$str|replace:"net":"com"} //将$str中的net全部替换成com

包含头模板文件:

{include file="top.tpl"}

调用time.inc.php里面的函数:

{insert name="getCurrentTime" assign="current_time" script="time.inc.php"}
  当前时间为{$current_time};
{/insert}

其中time.inc.php内容如下:

<?php
 function smarty_insert_getCurrentTime
 {
  return gmdate('l,j F Y g:i a T');//获得当前日期及时间
 }
?>

联系:

mailto{
mailto address="contact@smartyllc.com" subject="Smarty LLC Contact" encode="javascript"}

载入test.conf:

{conf_load file="test.conf" section="test"}
{#tt#}

test.conf内容如下:

[test]
tt = 12122

希望本文所述对大家基于smarty模板的PHP程序设计有所帮助。

PHP 相关文章推荐
IIS6的PHP最佳配置方法
Mar 19 PHP
PHP提取中文首字母
Apr 09 PHP
php中配置文件操作 如config.php文件的读取修改等操作
Jul 07 PHP
php 操作调试的方法
Jul 12 PHP
php addslashes 利用递归实现使用反斜线引用字符串
Aug 05 PHP
PHP加密扩展库Mcrypt安装和实例
Nov 10 PHP
PHP的伪随机数与真随机数详解
May 27 PHP
PHP中set error handler函数用法小结
Nov 11 PHP
[原创]PHP实现逐行删除文件右侧空格的方法
Dec 25 PHP
PHP使用http_build_query()构造URL字符串的方法
Apr 02 PHP
PHP使用preg_split()分割特殊字符(元字符等)的方法分析
Feb 04 PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
Feb 15 PHP
Smarty日期时间操作方法示例
Nov 15 #PHP
Fleaphp常见函数功能与用法示例
Nov 15 #PHP
PHP+JS实现的商品秒杀倒计时用法示例
Nov 15 #PHP
php遍历、读取文件夹中图片并分页显示图片的方法
Nov 15 #PHP
thinkphp的dump函数无输出实例代码
Nov 15 #PHP
PHP 用session与gd库实现简单验证码生成与验证的类方法
Nov 15 #PHP
PHP递归遍历指定文件夹内的文件实现方法
Nov 15 #PHP
You might like
PHP strtr() 函数使用说明
2008/11/21 PHP
DISCUZ 论坛管理员密码忘记的解决方法
2009/05/14 PHP
Yii2 如何在modules中添加验证码的方法
2017/06/19 PHP
PHP使用preg_split和explode分割textarea存放内容的方法分析
2017/07/03 PHP
锋利的jQuery 要点归纳(三) jQuery中的事件和动画(上:事件篇)
2010/03/24 Javascript
jQuery 名称冲突的解决方法
2011/04/08 Javascript
标题过长使用javascript按字节截取字符串
2014/04/24 Javascript
jquery实现图片按比例缩放示例
2014/07/01 Javascript
jQuery实现新消息闪烁标题提示的方法
2015/03/11 Javascript
jQuery实现进度条效果代码
2015/12/17 Javascript
JS实现的倒计时效果实例(2则实例)
2015/12/23 Javascript
jQuery配合coin-slider插件制作幻灯片效果的流程解析
2016/05/13 Javascript
js cookie实现记住密码功能
2017/01/17 Javascript
微信小程序scroll-view实现横向滚动和上拉加载示例
2017/03/06 Javascript
Vue.js之slot深度复制详解
2017/03/10 Javascript
vue.js选中动态绑定的radio的指定项
2017/06/02 Javascript
捕获未处理的Promise错误方法
2017/10/13 Javascript
使用JavaScrip模拟实现仿京东搜索框功能
2019/10/16 Javascript
Node.js控制台彩色输出的方法与原理实例详解
2019/12/01 Javascript
python简单实现刷新智联简历
2016/03/30 Python
pandas每次多Sheet写入文件的方法
2018/12/10 Python
解决python3 pika之连接断开的问题
2018/12/18 Python
python linecache 处理固定格式文本数据的方法
2019/01/08 Python
PyCharm 光标变成黑块的解决方式
2021/02/06 Python
amazeui 验证按钮扩展的实现
2020/08/21 HTML / CSS
荷兰音乐会和音乐剧门票订购网站:Topticketshop
2019/08/27 全球购物
阿迪达斯中国官网:Adidas中国
2020/12/14 全球购物
怎样写演讲稿
2014/01/04 职场文书
公司庆典活动邀请函
2014/01/09 职场文书
清华大学自主招生自荐信
2014/01/29 职场文书
报关报检委托书
2014/04/08 职场文书
4s店销售经理岗位职责
2014/07/19 职场文书
公司委托书格式范文
2014/10/09 职场文书
2014年司法所工作总结
2014/11/22 职场文书
担保书范文
2015/01/20 职场文书
测量JavaScript函数的性能各种方式对比
2021/04/27 Javascript