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循环输出数据库内容的代码
May 24 PHP
PHP iconv 函数转gb2312的bug解决方法
Oct 11 PHP
PHP中文处理 中文字符串截取(mb_substr)和获取中文字符串字数
Nov 10 PHP
PHP中如何判断AJAX提交的数据
Feb 05 PHP
PHP内置过滤器FILTER使用实例
Jun 25 PHP
php通过文件流方式复制文件的方法
Mar 13 PHP
php计算到指定日期还有多少天的方法
Apr 14 PHP
php使用文本统计访问量的方法
May 12 PHP
PHP判断JSON对象是否存在的方法(推荐)
Jul 06 PHP
详解thinkphp实现excel数据的导入导出(附完整案例)
Dec 29 PHP
Yii2.0使用阿里云OSS的SDK上传图片、下载、删除图片示例
Sep 20 PHP
php记录搜索引擎爬行记录的实现代码
Mar 02 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
站长助手-网站web在线管理程序 v1.0 下载
2007/05/12 PHP
PHP 长文章分页函数 带使用方法,不会分割段落,翻页在底部
2009/10/22 PHP
php实现网站插件机制的方法
2009/11/10 PHP
PHP开发过程中常用函数收藏
2009/12/14 PHP
基于PHP中的常用函数回顾
2013/07/11 PHP
Laravel 框架基于自带的用户系统实现登录注册及错误处理功能分析
2020/04/14 PHP
一个页面放2段图片滚动代码出现冲突的问题如何解决
2012/12/21 Javascript
jQuery监控文本框事件并作相应处理的方法
2015/04/16 Javascript
JQuery中节点遍历方法实例
2015/05/18 Javascript
JavaScript DOM 学习总结(五)
2015/11/24 Javascript
JavaScript数据类型的存储方法详解
2017/08/25 Javascript
[js高手之路]单例模式实现模态框的示例
2017/09/01 Javascript
inner join 内联与left join 左联的实例代码
2017/09/18 Javascript
JavaScrip关于创建常量的知识点
2017/12/07 Javascript
Servlet3.0与纯javascript通过Ajax交互的实例详解
2018/03/18 Javascript
使用pm2部署node生产环境的方法步骤
2019/03/09 Javascript
React传值 组件传值 之间的关系详解
2019/08/26 Javascript
element-ui 本地化使用教程详解
2019/10/28 Javascript
javascript/jquery实现点击触发事件的方法分析
2019/11/11 jQuery
Vue实现渲染数据后控制滚动条位置(推荐)
2019/12/09 Javascript
jQuery HTML获取内容和属性操作实例分析
2020/05/20 jQuery
[53:23]Secret vs Liquid 2018国际邀请赛淘汰赛BO3 第二场 8.25
2018/08/29 DOTA
Pyramid添加Middleware的方法实例
2013/11/27 Python
Python虚拟环境项目实例
2017/11/20 Python
对python中执行DOS命令的3种方法总结
2018/05/12 Python
Django contenttypes 框架详解(小结)
2018/08/13 Python
python3 flask实现文件上传功能
2020/03/20 Python
python3实现微型的web服务器
2019/09/03 Python
python+selenium+PhantomJS抓取网页动态加载内容
2020/02/25 Python
python tkinter GUI绘制,以及点击更新显示图片代码
2020/03/14 Python
selenium携带cookies模拟登陆CSDN的实现
2021/01/19 Python
IE10 Error.stack 让脚本调试更加方便快捷
2013/04/22 HTML / CSS
Maje德国官网:法国女性成衣品牌
2017/02/10 全球购物
物流合作计划书
2014/01/10 职场文书
促销活动策划方案
2014/01/12 职场文书
大学生志愿者感言
2014/01/15 职场文书