日期:2013-05-07  浏览次数:20474 次

Smarty技术是PHP的精髓所在,随着PHP版本的逐渐提高,原来的很多方法也许太过时了,下面我就针对最新的PHP5.1.1版本的使用,配置说说如何配置. 
下面是一步步的来的,请注意: 
1: 在官方下载模板库文件: http://smarty.php.net/download.php 
下载了就解压,看见一个文件夹了,是个 smarty.x.x,打开,里面有个libs 文件夹,ok,注意这个东西就是我们要的. 
2: 在你的网站目录下面,比方我的php网站IIS在物理硬盘的 d:/web/web/php下面,在这个文件夹下面建立:一个文件夹 test,然后我们把刚提到的 libs文件夹复制道test 文件夹下面.{ * 请看本文最后的注释 TIPS1} 
3:在test 文件夹下面再建立4个文件夹; 
cache 
configs 
templates 
templates_c 
4:建立文件 text.htm:
[复制此代码]CODE:<html>  
<head>  
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">  
<title><{$title}></title>  
</head>   
<body>  
<{$content}>  
</body>  
</html>
保存在 templates 目录下面. 
5:然后建立文件模板配置文件: config.php
[复制此代码]CODE:<?php   
    include "../libs/Smarty.class.php";   
 $NowPathArray=explode("test",str_replace("\\","/",dirname(__FILE__))) ;  
    @define("root_path", $NowPathArray[0]);  
    @define('__SITE_ROOT', root_path."test");   
    $tpl = new Smarty();   
    $tpl->template_dir = __SITE_ROOT . "/templates/";   
    $tpl->compile_dir = __SITE_ROOT . "/templates_c/";   
    $tpl->config_dir = __SITE_ROOT . "/configs/";   
    $tpl->cache_dir = __SITE_ROOT . "/cache/";   
    $tpl->left_delimiter = '<{';   
    $tpl->right_delimiter = '}>';   
?> 
保存在主目录也就是 test下面. 
6 :在test新建文件test.php文件,输入:
[复制此代码]CODE:<?php   
    require "config.php";   
    $tpl->assign("title", "测试成功了,这是标题");   
    $tpl->assign("content", "这是内容");   
    $tpl->display('test.htm');   
?>
7:在浏览器测试test.php显示为: 
这是内容
恭喜,配置成功.否则,失败,再检查是不是按照我说的来的. 
Tips1 :为了能在网站全局使用Smarty技术,我们可以修改PHP.inc里面的 
<B>
; Windows: "path1;path2"
include_path = ".;c:phpincludes"
</B> 
改为: 
-------------------> 
; Windows: "path1;path2"
include_path = ".;c:phpincludes;d:webwebphplibs"
使用模板的时候,像前面一样的方式使用,不要
include "../libs/Smarty.class.php"; 
直接使用就行了的.