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 相关文章推荐
下载文件的点击数回填
Oct 09 PHP
php二分法在IP地址查询中的应用
Aug 12 PHP
php中截取中文字符串的代码小结
Jul 17 PHP
php和mysql中uft-8中文编码乱码的几种解决办法
Apr 19 PHP
php 判断数组是几维数组
Mar 20 PHP
ThinkPHP模板IF标签用法详解
Jul 01 PHP
php+mysql实现数据库随机重排实例
Oct 17 PHP
PHP中使用虚代理实现延迟加载技术
Nov 05 PHP
php中memcache 基本操作实例
May 17 PHP
PHP的Laravel框架中使用消息队列queue及异步队列的方法
Mar 21 PHP
Zend Framework路由器用法实例详解
Dec 11 PHP
PHP生成腾讯云COS接口需要的请求签名
May 20 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语法(3)
2006/10/09 PHP
php 读取shell管道传输过来的内容
2010/03/01 PHP
10个值得深思的PHP面试题
2016/11/14 PHP
Jquery调用webService远程访问出错的解决方法
2010/05/21 Javascript
ASP.NET中基于JQUERY的高性能的TreeView补充
2011/02/23 Javascript
Jquery 一次处理多个ajax请求的代码
2011/09/02 Javascript
js判断一个元素是否为另一个元素的子元素的代码
2012/03/21 Javascript
JS异常处理的一个想法(sofish)
2013/03/14 Javascript
js判断游览器类型及版本号的代码
2014/05/11 Javascript
js随机生成字母数字组合的字符串 随机动画数字
2015/09/02 Javascript
div中文字内容溢出常见的解决方法
2017/03/16 Javascript
JavaScript封装的常用工具类库bee.js用法详解【经典类库】
2018/09/03 Javascript
React项目动态设置title标题的方法示例
2018/09/26 Javascript
浅谈在不使用ssr的情况下解决Vue单页面SEO问题(2)
2018/11/08 Javascript
JavaScript数组排序小程序实现解析
2020/01/13 Javascript
Typescript3.9 常用新特性一览(推荐)
2020/05/14 Javascript
[51:07]VGJ.S vs Pain 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
PYTHON 中使用 GLOBAL引发的一系列问题
2016/10/12 Python
Python 通过pip安装Django详细介绍
2017/04/28 Python
Python实现将字符串的首字母变为大写,其余都变为小写的方法
2019/06/11 Python
python 根据字典的键值进行排序的方法
2019/07/24 Python
Python 类,property属性(简化属性的操作),@property,property()用法示例
2019/10/12 Python
python实现异常信息堆栈输出到日志文件
2019/12/26 Python
Python 之 Json序列化嵌套类方式
2020/02/27 Python
python 判断txt每行内容中是否包含子串并重新写入保存的实例
2020/03/12 Python
django实现模板中的字符串文字和自动转义
2020/03/31 Python
Python json读写方式和字典相互转化
2020/04/18 Python
web页面录屏实现
2019/02/12 HTML / CSS
萌新的HTML5 入门指南
2020/11/06 HTML / CSS
Finishline官网:美国一家领先的运动品牌鞋类、服装零售商
2016/07/20 全球购物
野兽派官方旗舰店:THE BEAST 野兽派
2016/08/05 全球购物
普通院校学生的自荐信
2013/11/27 职场文书
学习张林森心得体会
2014/09/10 职场文书
学校工会工作总结2015
2015/05/19 职场文书
2019送给家人们的中秋节祝福语
2019/08/15 职场文书
Go语言基础map用法及示例详解
2021/11/17 Golang