php中使用模板引擎

php中使用模板引擎

ID:10783332

大小:42.50 KB

页数:6页

时间:2018-07-08

php中使用模板引擎_第1页
php中使用模板引擎_第2页
php中使用模板引擎_第3页
php中使用模板引擎_第4页
php中使用模板引擎_第5页
资源描述:

《php中使用模板引擎》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、PHP中使用模板引擎一.什么是模板?使用模板引擎可以使业务逻辑与显示逻辑分开——这是很欠扁但也是网上公认的说法,呃,说得很准确,但估计只有会使用模板的人才能理解……其实刚开始大可以简单的理解模板为“PHP与HTML代码分离的方法”。二。为什么要使用模板技术?让程序(PHP层)与显示(HTML层)分离可以使代码更清晰易懂,要修改程序问题就去PHP层找,要改显示问题就去HTML层改。更重要的是这样的设计可以让不懂PHP的前台美工也能修改页面。如果不是很理解没关系,你只要知道这是迈向其它高级开发模式的必经之路就可以了。三。有哪些模板技术?我使用过PHPLIB库

2、中的模板类,后来又使用了smarty和smartyLight,也试过原生的PHP方式实现的模板,现在大家基本上都用smarty。PHP方式相对来说最容易实现,学得也快,但不适合团队合作。四。smarty广被攻击的“弱点”smarty的语法太复杂,学它简直就是学一门新语言——其实你不需要复杂的功能,它就简单得很,如果你需要它复杂的功能,那你应该感谢它!根据我的经验,刚开始用一个东西,大家都喜欢简洁精炼,但随着应用的复杂,大多会抱怨它功能不足……smarty有几百K,它太大了,慢!——其实大小与速度不成正比,smarty有编译缓存和静态缓存机制,甚至可以局部

3、缓存另外它的自定义插件用起来非常爽,modify,block等,我这几天正用它的block来输出页面组件。 五。下载,配置smarty因为我后来一直用smarty的简化版smartyLight,它们的语法大部分相同但也有不同,所以没办法把我现在的代码搬出来以免出错,好吧,为了写这篇,我去下载完整版smarty。 下载2.6.18版的吧,最新的是2008的,不一定很稳定其它目录都删了,保留libs目录就可以了,如果为了学习可以保留demo目录。六。实战使用模板引擎后,PHP代码与模板分离了,一般写一个应用都有PHP和HTML两个页面PHP部分有三个部分组成

4、:载入与配置、赋值、载入模板解析,其中第一部分是公用的,也就是放到公共页里以后都不需要再写的。第三部分即dispay方法,就一行代码,所以重点在第二部分。(注:数组都分索引数组和关联数组两种来说明,索引数组即以数字为键的数组,关联数组是每个键有个字符串名称的数组,实在不理解就翻书去)A。普通变量赋值与使用.PHP代码·header(‘Content-Type:text/html;charset=utf-8′);  ·require ‘../libs/Smarty.class.php’;  ·  ·$smarty = new Smarty;  ·  ·$s

5、marty->compile_check = true;  ·$smarty->debugging = false; //调试时设为true  ·  ·//以上操作通常在包含页里,也就是说和数据库链接那样的操作类似,写一次就行了,根本不用记  ·//下面是实际的代码,PHP部分没啥难的,各种类型的变量,数组,对象统统可以用assign方法赋值给模板.  ·$smarty->assign(“name”,“星野天河”);                     //这句是第二部分。普通的变量  ·$smarty->display(‘index.tpl’); 

6、//载入模板   最后一句的display方法是载入默认模板目录下的index.tpl模板,当然可以修改默认的模板目录。假如要改到abc目录。(不要照抄啊,出错我不负责)PHP代码·$smarty->template_dir = ‘/abc/’;  模板部分(本例为index.tpl文件)XML/HTML代码·普通变量的使用格式: {$name}
   这样大括号中的内容会被上面11行定义的name值代替。使用这个你可以把网页标题,关键字,站长名字、图片路径、js路径、网站根目录、文档根等信息都在包含页里直接赋值了(一次性操作),之后在模板里任何地

7、方可以直接使用。路径问题也不至于错乱,修改起来也省事。B。一维索引数组的赋值与使用PHP代码·$smarty->assign(“persons”,array(“星野天河”,“小蕊”,“天空”,“西”,‘奶瓶’));  将数组丢给$persons变量,html中循环输出数组有两种格式。第一种如下XML/HTML代码·{section name=item loop=$persons}  ·    {$persons[item]}
  ·{/section}  section是smarty的循环结构,loop表示要循环哪个变量,这里是$persons这个

8、变量(上面PHP代码中赋值的数组),name表示循环中的每一项值用什么表示,可以

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。