关于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开发GUI
Oct 09 PHP
PHP系列学习之日期函数使用介绍
Aug 18 PHP
PHP获取网址的顶级域名函数代码
Sep 24 PHP
ThinkPHP基于PHPExcel导入Excel文件的方法
Oct 15 PHP
常用PHP框架功能对照表
Oct 23 PHP
php绘制一个扇形的方法
Jan 24 PHP
php生成唯一数字id的方法汇总
Nov 18 PHP
PHP执行linux命令常用函数汇总
Feb 02 PHP
Yii使用DeleteAll连表删除出现报错问题的解决方法
Jul 14 PHP
thinkPHP5框架导出Excel文件简单操作示例
Aug 03 PHP
laravel 解决groupBy时出现的错误 isn't in Group By问题
Oct 17 PHP
PHP中strval()函数实例用法
Jun 07 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
一个取得文件扩展名的函数
2006/10/09 PHP
深入PHP中慎用双等于(==)的详解
2013/06/06 PHP
AJAX PHP无刷新form表单提交的简单实现(推荐)
2016/09/09 PHP
PHP实现按之字形顺序打印二叉树的方法
2018/01/16 PHP
javascript中获取选中对象的类型
2007/04/02 Javascript
使用AngularJS实现表单向导的方法
2015/06/19 Javascript
jquery密码强度校验
2015/12/02 Javascript
JavaScript仿微博发布信息案例
2016/11/16 Javascript
详解微信小程序-获取用户session_key,openid,unionid - 后端为nodejs
2019/04/29 NodeJs
Vue.js标签页组件使用方法详解
2019/10/19 Javascript
对layui数据表格动态cols(字段)动态变化详解
2019/10/25 Javascript
vue 授权获取微信openId操作
2020/11/13 Javascript
用Python实现一个简单的线程池
2015/04/07 Python
Python与shell的3种交互方式介绍
2015/04/11 Python
详解Python中__str__和__repr__方法的区别
2015/04/17 Python
Python中实现三目运算的方法
2015/06/21 Python
理解python中生成器用法
2017/12/20 Python
Python实现将doc转化pdf格式文档的方法
2018/01/19 Python
Python对List中的元素排序的方法
2018/04/01 Python
Python实现的质因式分解算法示例
2018/05/03 Python
对numpy中shape的深入理解
2018/06/15 Python
Python实现购物评论文本情感分析操作【基于中文文本挖掘库snownlp】
2018/08/07 Python
python求最大值,不使用内置函数的实现方法
2019/07/09 Python
Python 类,property属性(简化属性的操作),@property,property()用法示例
2019/10/12 Python
Python文件名匹配与文件复制的实现
2020/12/11 Python
美国半成品食材配送服务商:Home Chef
2018/01/25 全球购物
结婚保证书范文
2014/04/29 职场文书
企业员工集体活动方案
2014/08/17 职场文书
讲文明懂礼貌演讲稿
2014/09/11 职场文书
小学见习报告
2014/10/31 职场文书
2014年社团工作总结范文
2014/11/27 职场文书
小学生家长意见
2015/06/03 职场文书
保姆聘用合同
2015/09/21 职场文书
体育委员竞选稿
2015/11/21 职场文书
2019新学期家长会工作计划
2019/08/21 职场文书
Docker部署Mysql8的实现步骤
2022/07/07 Servers