关于PHP模板Smarty的初级使用方法以及心得分享


Posted in PHP onJune 21, 2013

至于怎么配置,这里就不用多说了,网上一大堆。
1.基本上要用到的最主要的方法就是assign和display方法。
2.基本上在页面上要用到的知识就是if和foreach和section这三个。
3.基本上最难的就是foreach和section。
4.初学的时候老是循环不出自己想要的数据。因为感觉还是跟php啊java啊这些的foreach和for都有些差别的。很难抓住他的活动路径,很难调试他的数据。
5.所以这里,我把一点点经念放出来:
如果数据是这样:

array(0=>array('id'=>'1111','content'=>'2222'));那么foreach循环
{{foreach from=$exam item=item key=k}}
{{$item.content}}
{{/foreach}}

就可以了,但是如果是array('id'=>'1111','content'=>'2222')这样,就不可以这样循环了,需要这样:
{{foreach from=$exam item=item key=k}}
{{if $k eq 'content'}}
         {{$item}}
{{/if}}
{{/foreach}}

这里如果不了解eq是什么意思,可以网上搜下,下面我把这个给稍微罗列下:
eq相等,
ne、neq不相等,
gt大于,
lt小于,
gte、ge大于等于,
lte、le 小于等于,
not非, mod求模。
is [not] div by是否能被某数整除,
is [not]even是否为偶数,
$a is [not] even by $b即($a / $b) % 2 == 0,
is [not] odd是否为奇

6.在smarty的模板里面如果要使用php代码,这样:
{{php}}$a = "gayayang"; echo $a;{{/php}}
这样就可以在模板里面使用php代码了。

7.在smarty里面引用文件:
可以用上面的办法:{{php}}include "config.php";{{/php}}
或者专业一点:{{include file="config.php"}}
两个方法都可以实现。下面的比较专业点,推荐。

8.有个这样的方法:$smarty->fetch("mytemplate.html");
fetch和display都是渲染模板用的.fetch可以将渲染后的整个模板以字符串的形式赋值给一个变量,可以用作生成静态页用

现在知道这个怎么用了吧,他可以返回文件的内容给一个变量,那这个就非常有用咯。呵呵
使用fetch函数,你可以将要输出的html赋值给一个变量,可以对里面的数据进行一些输出,再将他输出。
smarty中的display方法,实际上调用的就是fetch,只不过是直接将他显示出来而已,而fetch默认是不显示,返回给一个变量的。

基本上也就这么些了,以后有补充了再来写吧。呵呵

PHP 相关文章推荐
php 删除记录实现代码
Mar 12 PHP
php 什么是PEAR?(第三篇)
Mar 19 PHP
约瑟夫环问题的PHP实现 使用PHP数组内部指针操作函数
Oct 12 PHP
使用ThinkPHP+Uploadify实现图片上传功能
Jun 26 PHP
浅谈php优化需要注意的地方
Nov 27 PHP
php简单随机字符串生成方法示例
Apr 19 PHP
PHP实现腾讯与百度坐标转换
Aug 05 PHP
thinkPHP5实现数据库添加内容的方法
Oct 25 PHP
php实现单笔转账到支付宝功能
Oct 09 PHP
php封装的pdo数据库操作工具类与用法示例
May 08 PHP
PHP swoole和redis异步任务实现方法分析
Aug 12 PHP
PHP xpath提取网页数据内容代码解析
Jul 16 PHP
解析关于wamp启动是80端口被占用的问题
Jun 21 #PHP
解析PHP中DIRECTORY_SEPARATOR,PATH_SEPARATOR两个常量的作用
Jun 21 #PHP
解析PHP将对象转换成数组的方法(兼容多维数组类型)
Jun 21 #PHP
解析PHP中intval()等int转换时的意外异常情况
Jun 21 #PHP
解析zend studio中直接导入svn中的项目的方法步骤
Jun 21 #PHP
解析coreseek for sphinx的使用
Jun 21 #PHP
关于使用coreseek并为其做分页的介绍
Jun 21 #PHP
You might like
用 php 编写的日历
2006/10/09 PHP
PHP容易忘记的知识点分享
2013/04/30 PHP
不使用php api函数实现数组的交换排序示例
2014/04/13 PHP
Zend Framework自定义Helper类相关注意事项总结
2016/03/14 PHP
用PHP去掉文件头的Unicode签名(BOM)方法
2017/06/22 PHP
解决php extension 加载顺序问题
2019/08/16 PHP
浅谈laravel数据库查询返回的数据形式
2019/10/21 PHP
一个用js实现的页内搜索代码
2007/05/23 Javascript
不错的JS中变量相关的细节分析
2007/08/13 Javascript
Javascript select控件操作大全(新增、修改、删除、选中、清空、判断存在等)
2008/12/19 Javascript
JavaScript asp.net 获取当前超链接中的文本
2009/04/14 Javascript
JS实现日期时间动态显示的方法
2015/12/07 Javascript
jQuery调用WebMethod(PageMethod) NET2.0的方法
2016/04/15 Javascript
jQuery Validate 无法验证 chosen-select元素的解决方法
2017/05/17 jQuery
Vue项目中引入外部文件的方法(css、js、less)
2017/07/24 Javascript
js 概率计算(简单版)
2017/09/12 Javascript
Vue表单控件绑定图文详解
2019/02/11 Javascript
如何通过setTimeout理解JS运行机制详解
2019/03/23 Javascript
node.js使用stream模块实现自定义流示例
2020/02/13 Javascript
pygame学习笔记(6):完成一个简单的游戏
2015/04/15 Python
Python实现股市信息下载的方法
2015/06/15 Python
Python检测网络延迟的代码
2018/05/15 Python
python 6.7 编写printTable()函数表格打印(完整代码)
2020/03/25 Python
基督教卡片、励志礼品、家居装饰等:DaySpring
2018/10/12 全球购物
东芝官网商城:还原日式美学,打造美好生活
2018/12/27 全球购物
Prototype如何更新局部页面
2013/03/03 面试题
体育教育专业毕业生自荐信
2013/11/15 职场文书
光盘行动倡议书
2014/02/02 职场文书
2014年三八妇女节活动方案
2014/02/28 职场文书
幼儿园大班毕业教师寄语
2014/04/03 职场文书
《恐龙》教学反思
2014/04/27 职场文书
房产公证委托书范本
2014/09/20 职场文书
2014年团队工作总结
2014/11/24 职场文书
解除劳动关系协议书2篇
2014/11/28 职场文书
新年寄语2016
2015/08/17 职场文书
小学二年级班主任工作经验交流材料
2015/11/02 职场文书