如果要实现前端模板和后台逻辑业务处理相分离,MVC的思想开发网站的话,可使用模板引擎来完成。来学习php模板引擎Smarty,它分开了逻辑程序和外在的内容,提供了一种易于管理的方法。
1. 什么是模板引擎?
就是将html代码和PHP代码合成的一种技术,在模板里以变量形式显示对应内容,也是一种HTML脚本语言。
2. 为什么使用模板引擎?
为了让HTML程序员和PHP程序员协同开发;为了提高开发效率。
3. 什么时候使用模板引擎?
MVC开发
4. 模板引擎的种类:
a) 太多了。fasttemplate、PHPLIB、IPB、xingTemplate等
b) 比较流行的Smarty模板引擎,Smarty模板引擎是编译型模板引擎
5. Smarty的安装使用:
现在官网下载的smarty版本是v3.1.27,其核心目录libs结构:
plugins
sysplugins
Autoloader.php
debug.tpl
Smarty.class.php
SmartyBC.class.php ---smarty版本二与三的兼容文件
使用步骤:
a) 加载smarty核心类
b) 实例化对象
c) 初始化配置
d) 分配变量
e) 显示模板
自己的Smarty的“五配置两方法”:
//1.引入smarty文件 include "./libs/Smarty.class.php"; //2.实例化smarty(Smarty) $smarty = new Smarty; //3.配置(五配置两方法) //五配置介绍: $smarty->left_delimiter = "{"; //左定界符 $smarty->right_delimiter = "}"; //右定界符 $smarty->template_dir = "tpl"; //html视图模板的地址 $smarty->compile->dir = "template_c"; //模板编译生成的文件 $smarty->cache_dir = "cache"; //缓存 //以下是开启缓存的两个配置。因为通常不用smarty的缓存机制,所以此项制作了解(memcache是一套分布式的高速缓存系统) //$smarty->caching = true; //开启缓存 //$smarty->cache_lifetime = 120; //缓存时间 //两方法介绍: $smarty->assign("content","页面内容"); //发送变量 $smarty->display("index.html"); //显示模板
6. Smaty的一些特点:
非常的快;对修改过的模板文件进行重新编译。
可以扩展,可以编辑'自定义函数'和自定义'变量'。
自行设置模板定界符。
诸如 if/elseif/else/endif 条件判断语句;foreach,section函数的循环。
内建缓存支持;独立模板文件;插件体系结构。
7. Smarty的学习方向:
a) 模板程序员篇(PHP程序)
b) 模板设计者篇(美工)
8. Smarty变量调节器:
a)内置的变量调节器
i. Upper
ii. Lower
iii. Date_format
iv. Default
v. Escape
vi. Unescape
vii. Nl2br
viii. String_format
ix. Strip
x. Strip_tags
xi. Truncate
b)自定义的变量修改器:
i.局部注册
1.声明一个自定义函数
第一个参数:要处理的变量的值
后面的参数就是在调用时传递的参数
2.registerPlugin(“modifier”,”模板当中的调节器名称”,”自定义函数名称”)
ii.全局注册
1.新建一个插件文件
文件名称:modifier.调节器名称.php
2.在文件当中声明一个函数
a)函数名:smarty_modifier_调节器名称
b)第一个参数:要处理的变量的值
c)后面的参数调用时传递的参数
9. Smarty的插件机制:
一个插件就是一个函数
插件主要是用来对Smarty的功能进行拓展
自定义按照自己的需求去创建插件
暂时就这么多,做个笔记。......
- 我的微信
- 这是我的微信扫一扫
- 我的微信公众号
- 我的微信公众号扫一扫