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 相关文章推荐
PHP ? EasyUI DataGrid 资料存的方式介绍
Nov 07 PHP
php字符串分割函数explode的实例代码
Feb 07 PHP
windows环境下php配置memcache的具体操作步骤
Jun 09 PHP
php实现用于删除整个目录的递归函数
Mar 16 PHP
php结合安卓客户端实现查询交互实例
May 05 PHP
再推荐十款免费的php开发工具
Nov 09 PHP
PHP输出多个元素的排列或组合的方法
Mar 14 PHP
php实现的pdo公共类定义与用法示例
Jul 19 PHP
php实现基于pdo的事务处理方法示例
Jul 21 PHP
PHP的RSA加密解密方法以及开发接口使用
Feb 11 PHP
laravel框架模板之公共模板、继承、包含实现方法分析
Aug 30 PHP
Laravel 修改验证异常的响应格式实例代码详解
May 25 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
论建造顺序的重要性
2020/03/04 星际争霸
如何解决CI框架的Disallowed Key Characters错误提示
2013/07/05 PHP
WordPress中用于检索模版的相关PHP函数使用解析
2015/12/15 PHP
php版微信公众平台实现预约提交后发送email的方法
2016/09/26 PHP
asp.net下利用js实现返回上一页的实现方法小集
2009/11/24 Javascript
web性能优化之javascript性能调优
2012/12/28 Javascript
Angularjs中如何使用filterFilter函数过滤
2016/02/06 Javascript
js HTML5 Ajax实现文件上传进度条功能
2016/02/13 Javascript
使用原生的javascript来实现轮播图
2017/02/24 Javascript
js实现多行文本框统计剩余字数功能
2017/03/28 Javascript
ES6中class类用法实例浅析
2017/04/06 Javascript
详解vue2路由vue-router配置(懒加载)
2017/04/08 Javascript
手机注册发送验证码倒计时的简单实例
2017/11/15 Javascript
vue轮播图插件vue-awesome-swiper
2017/11/27 Javascript
使用JS获取SessionStorage的值
2018/01/12 Javascript
vue-router beforeEach跳转路由验证用户登录状态
2018/12/26 Javascript
如何阻止小程序遮罩层下方图层滚动
2019/09/05 Javascript
vue使用Sass时报错问题的解决方法
2020/10/14 Javascript
微信小程序实现文件预览
2020/10/22 Javascript
Python 创建子进程模块subprocess详解
2015/04/08 Python
让Python代码更快运行的5种方法
2015/06/21 Python
实践Python的爬虫框架Scrapy来抓取豆瓣电影TOP250
2016/01/20 Python
win10系统中安装scrapy-1.1
2016/07/03 Python
Python优化技巧之利用ctypes提高执行速度
2016/09/11 Python
[原创]使用豆瓣提供的国内pypi源
2017/07/02 Python
PyQt5实现暗黑风格的计时器
2019/07/29 Python
python的mysql数据库建立表与插入数据操作示例
2019/09/30 Python
Html5移动端弹幕动画实现示例代码
2018/08/27 HTML / CSS
Hotels.com香港酒店网:你的自由行酒店订房专家
2018/01/22 全球购物
怀旧香味蜡烛:Homesick
2019/11/02 全球购物
2014年国庆节演讲稿
2014/09/02 职场文书
2014年企业团支部工作总结
2014/12/10 职场文书
企业员工辞职信范文
2015/05/12 职场文书
2015秋季开学典礼新闻稿
2015/07/17 职场文书
小学数学教师研修感悟
2015/11/18 职场文书
中学生打架检讨书之500字
2019/08/06 职场文书