Smarty 是PHP的一个模板引擎,是由Monte Ohrt 和 Andrei Zmievski 使用PHP语言开发的,发展至今已成为一个非常流行的模板引擎,Smarty 提供了一种易于管理和使用的方法,将PHP代码从HMTL代码页面中分享出来,使用程序员与页面美工之间的分工更加明确,大大提高团队的开发效率。
1、要使用Smarty 可到官方网站http://www.smarty.net 去下载,下载完成按以下步骤安装:
(1) 将下载完的 Smarty 压缩包解压到一个指定位置,比如C:/Smarty
(2) 因为在程序中要用到 Smarty 的类库,而Smarty 类文件是位于 libs 文件夹下的Smarty.class.php文件,所以需要修改 PHP的配置文件 Php.ini 文件:查找 include_path 项,在下面添加 include_path = " .; c:/smarty/libs ",注意,多个路径可用分号隔开,因为新添加的路径会覆盖上面的路径设置。
页面引用时: require ( ' Smarty.class.php' );
(3) 另一种做法是手动设置SMARTY_DIR常量,例如:
define ( ' SMARTY_DIR' ,' /usr/local/lib/php/Smarty/ libs/' );
require ( SMARTY_DIR.' Smarty.class.php' );
(4) 还有一种做法是引用库文件的绝对路径,不推荐使用,代码如下:
require ( '/usr/local/lib/php/Smarty/libs/Smarty.class.php' );
[ 注意:其中路径以实际安装路径为准,文中只做参考。]
2、配置Smarty,在使用Smarty时,需要创建下面4个目录用于存放Smarty模板和配置文件:
(1) templates:存放模板文件
(2) templates_c:存放编译完的PHP文件
(3) configs:存放配置文件
(4) cache:存放Smarty缓存模板
[ 注意:templates 和templates_c目录是必须创建的,configs和cache 可以根据需要创建,但目录名称必须是这四个文件名,不能修改,否则会提示找不到文件错误。]
在应用程序中,可将这些文件直接放置到PHP文件所在目录下,但为了安全起见,建议将这4个文件与PHP文件所在目录分开,放在单独目录中,然后用Smarty 的 $template_dir、$compile_dir、$config_dir、$cache_dir 在程序中进行声明,例如
require ( 'Smarty.class.php' );
$smarty = new Smarty();
$smarty -> $template_dir( "/usr/local/lib/php/Smarty/" );
$smarty -> $compile_dir( "/usr/local/lib/php/Smarty/" );
$smarty -> $config_dir( "/usr/local/lib/php/Smarty/" );
$smarty -> $cache_dir( "/usr/local/lib/php/Smarty/" );