一、Smarty入门1

1.1 什么是模板引擎

模板引擎的功能是实现逻辑与显示相分离,使程序设计者可以专注于程序功能的开发;而网页设计师专注于页面的设计。也可以让网站的维护和更新变得更容易,创造一个更加良好的开发环境

1.2 Smarty的下载与配置

模板引擎的种类有很多,Smarty模板引擎是其中被广泛使用的一种。在PHP中,本身并没有内置Smarty模板引擎,因此需要下载。下载地址为:http://www.smarty.net/download

注意:Smarty 3.x要求服务器上的PHP版本最低为5.2

Smarty模板引擎的核心文件都在解压后的lib文件夹中

  • Plugins:存放用户自定义插件的目录
  • Sysplugins:存放系统函数文件的目录
  • Smarty.class.php:Smarty模板引擎功能的实现主要是通过实例化该类的对象,调用对象相关方法来完成
  • SmartyBC.class.php:Smarty为了向前兼容Smarty2版本而设置了这个类

在使用Smarty之前,为了让Smarty模板引擎能够更好的与项目结合,通常会对其进行一些配置,接下来就为大家介绍几个在使用Smarty时常用的配置,如下表所示
一、Smarty入门1

1.3 深入分析Smarty实现原理

  • 当第一次访问一个页面的时候,Smarty的执行流程如图的路径1所示。
  • 当再次访问该页面的时候, Smarty会先判断是否开启了缓存,如果开启和缓存且缓存文件没有过期,则会访问缓存文件并将缓存文件以最终结果返回给用户,如图的路径2所示。
  • 如果没有开启缓存或者缓存文件已经过期,则会判断模板文件是否被改变。如果模板文件没有改变则访问上次编译后的文件,并将该文件以最终结果返回给用户。如果模板文件已经改变,则重新加载模板文件并进行编译,最后再将编译后的文件以最终结果返回给用户
    一、Smarty入门1
    通过对Smarty的深入分析可以知道,Smarty的核心原理就是标签的替换,将Smarty标签替换为PHP标签。