关于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 15 PHP
对text数据类型不支持代码页转换 从: 1252 到: 936
Apr 23 PHP
使用php实现快钱支付功能(涉及到接口)
Jul 01 PHP
PHP mkdir()无写权限的问题解决方法
Jun 19 PHP
ThinkPHP模板判断输出Empty标签用法详解
Jun 30 PHP
浅析php适配器模式(Adapter)
Nov 25 PHP
PHP实现的memcache环形队列类实例
Jul 28 PHP
100多行PHP代码实现socks5代理服务器[2]
May 05 PHP
微信自定义分享php代码分析
Nov 24 PHP
浅谈socket同步和异步、阻塞和非阻塞、I/O模型
Dec 15 PHP
php中curl和soap方式请求服务超时问题的解决
Jun 11 PHP
Laravel学习笔记之Artisan命令生成自定义模板的方法
Nov 22 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类中Static方法效率测试代码
2010/10/17 PHP
教你如何快捷的使用cmd访问mysql小技巧
2014/05/26 PHP
php in_array() 检查数组中是否存在某个值详解
2016/11/23 PHP
PHP实现获取第一个中文首字母并进行排序的方法
2017/05/09 PHP
页面按钮禁用与解除禁用的方法
2014/02/19 Javascript
jQuery实现自动切换播放的经典滑动门效果
2015/09/12 Javascript
移动手机APP手指滑动切换图片特效附源码下载
2015/11/30 Javascript
js控制台输出的方法(详解)
2016/11/26 Javascript
js监听input输入框值的实时变化实例
2017/01/26 Javascript
微信小程序 常用工具类详解及实例
2017/02/15 Javascript
详解基于Node.js的HTTP/2 Server实践
2018/05/31 Javascript
JS插件clipboard.js实现一键复制粘贴功能
2020/12/04 Javascript
详解Vue源码之数据的代理访问
2018/12/11 Javascript
使用Easyui实现查询条件的后端传递并自动刷新表格的两种方法
2019/09/09 Javascript
javascript利用canvas实现鼠标拖拽功能
2020/07/23 Javascript
用Python脚本生成Android SALT扰码的方法
2013/09/18 Python
Python读csv文件去掉一列后再写入新的文件实例
2017/12/28 Python
python 读取鼠标点击坐标的实例
2018/12/29 Python
Pandas之groupby( )用法笔记小结
2019/07/23 Python
tensorflow获取预训练模型某层参数并赋值到当前网络指定层方式
2020/01/24 Python
python 在右键菜单中加入复制目标文件的有效存放路径(单斜杠或者双反斜杠)
2020/04/08 Python
Python bisect模块原理及常见实例
2020/06/17 Python
python 实现倒计时功能(gui界面)
2020/11/11 Python
PyTorch中的拷贝与就地操作详解
2020/12/09 Python
婴儿地球:Baby Earth
2018/12/25 全球购物
刘胡兰的英雄事迹材料
2014/02/11 职场文书
俞敏洪北大演讲稿
2014/05/22 职场文书
教师师德表现自我评价
2015/03/05 职场文书
捐款通知怎么写
2015/04/24 职场文书
婚宴新娘致辞
2015/07/28 职场文书
聘任通知书
2015/09/21 职场文书
幽默导游词应该怎么写?
2019/08/26 职场文书
2019年二手房买卖合同范本
2019/10/14 职场文书
Spring Security中用JWT退出登录时遇到的坑
2021/10/16 Java/Android
Linux磁盘管理方法介绍
2022/06/01 Servers
Python 第三方库 openpyxl 的安装过程
2022/12/24 Python