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读注册表
Oct 09 PHP
php模板中出现空行解决方法
Mar 08 PHP
php自动获取字符串编码函数mb_detect_encoding
May 31 PHP
php设计模式 Adapter(适配器模式)
Jun 26 PHP
深入解析phpCB批量转换的代码示例
Jun 27 PHP
php中的curl使用入门教程和常见用法实例
Apr 10 PHP
VPS中使用LNMP安装WordPress教程
Dec 28 PHP
PHP实现格式化文件数据大小显示的方法
Jan 03 PHP
PHP结合jQuery插件ajaxFileUpload实现异步上传文件实例
Aug 17 PHP
PHP会话操作之cookie用法分析
Sep 28 PHP
php一个文件搞定微信jssdk配置
Dec 12 PHP
Laravel5.1 框架数据库操作DB运行原生SQL的方法分析
Jan 07 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.ini中文版
2006/10/09 PHP
E路文章系统PHP
2006/12/11 PHP
慎用preg_replace危险的/e修饰符(一句话后门常用)
2013/06/19 PHP
浅谈PHP的数据库接口和技术
2016/12/09 PHP
分享8个Laravel模型时间戳使用技巧小结
2020/02/12 PHP
C#中TrimStart,TrimEnd,Trim在javascript上的实现
2011/01/17 Javascript
js实现缓冲运动效果的方法
2015/04/10 Javascript
ubuntu下安装nodejs以及升级的办法
2015/05/08 NodeJs
JavaScript模板引擎Template.js使用详解
2016/12/15 Javascript
jQuery 循环遍历改变a标签的href(实例讲解)
2017/07/12 jQuery
ES6解构赋值实例详解
2017/10/31 Javascript
Vue.js分页组件实现:diVuePagination的使用详解
2018/01/10 Javascript
JavaScript实现数组全排列、去重及求最大值算法示例
2018/07/30 Javascript
小程序异步问题之多个网络请求依次执行并依次收集请求结果
2019/05/05 Javascript
Vue父组件如何获取子组件中的变量
2019/07/24 Javascript
uni-app 组件里面获取元素宽高的实现
2019/12/27 Javascript
详解Vue中的MVVM原理和实现方法
2020/07/15 Javascript
[01:43]倾听DOTA2英雄之声 魅惑魔女国服配音鉴赏
2013/06/06 DOTA
Python常用正则表达式符号浅析
2014/08/13 Python
你眼中的Python大牛 应该都有这份书单
2017/10/31 Python
Python内置模块logging用法实例分析
2018/02/12 Python
Tensorflow使用tfrecord输入数据格式
2018/06/19 Python
Python分支语句与循环语句应用实例分析
2019/05/07 Python
解决python中使用PYQT时中文乱码问题
2019/06/17 Python
python如何更新包
2020/06/11 Python
Python如何实现后端自定义认证并实现多条件登陆
2020/06/22 Python
Python自带的IDE在哪里
2020/07/01 Python
详解基于python的全局与局部序列比对的实现(DNA)
2020/10/07 Python
英国汽车和货车租赁网站:Hertz英国
2016/09/02 全球购物
西雅图的买手店:Totokaelo
2019/10/19 全球购物
毕业生求职简历的自我评价
2013/10/07 职场文书
毕业生找工作的自我评价
2013/10/18 职场文书
超市国庆节促销方案
2014/02/20 职场文书
中等生评语大全
2014/05/04 职场文书
2014国庆节幼儿园亲子活动方案
2014/09/16 职场文书
2019安全宣传标语大全
2019/08/14 职场文书