笑谈配置,使用Smarty技术


Posted in PHP onJanuary 04, 2007

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: 

<html>   
<head>   
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">   
<title><{$title}></title>   
</head>    
<body>   
<{$content}>   
</body>   
</html> 

保存在 templates 目录下面. 
5:然后建立文件模板配置文件: config.php
<?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文件,输入: 
<?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"; 
直接使用就行了的.

PHP 相关文章推荐
将OICQ数据转成MYSQL数据
Oct 09 PHP
php 缓存函数代码
Aug 27 PHP
php 字符串函数收集
Mar 29 PHP
PHP 开发环境配置(测试开发环境)
Apr 28 PHP
PHP 小心urldecode引发的SQL注入漏洞
Oct 27 PHP
PHP获取指定月份第一天和最后一天的方法
Jul 18 PHP
[原创]PHP实现逐行删除文件右侧空格的方法
Dec 25 PHP
PHP递归遍历多维数组实现无限分类的方法
May 06 PHP
PHP+JQuery+Ajax实现分页方法详解
Aug 06 PHP
Zend Framework校验器Zend_Validate用法详解
Dec 09 PHP
Laravel框架学习笔记之批量更新数据功能
May 30 PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
Feb 16 PHP
Smarty模板快速入门
Jan 04 #PHP
菜鸟学PHP之Smarty入门
Jan 04 #PHP
推荐php模板技术[转]
Jan 04 #PHP
推荐个功能齐全的发送PHP邮件类
Jan 03 #PHP
php和js交互一例-PHP教程,PHP应用
Jan 03 #PHP
URL Rewrite的设置方法
Jan 02 #PHP
DISCUZ 分页代码
Jan 02 #PHP
You might like
php htmlspecialchars()与shtmlspecialchars()函数的深入分析
2013/06/05 PHP
PHP+javascript制作带提示的验证码源码分享
2014/05/28 PHP
分享最受欢迎的5款PHP框架
2014/11/27 PHP
PHP中preg_match函数正则匹配的字符串长度问题
2015/05/27 PHP
php获取错误信息的方法
2015/07/17 PHP
详解PHP中的序列化、反序列化操作
2017/03/21 PHP
php 多继承的几种常见实现方法示例
2019/11/18 PHP
数理公式,也可以这么唯美
2021/03/10 无线电
JQuery 1.3.2以上版本中出现pareseerror错误的解决方法
2011/01/11 Javascript
含有CKEditor的表单如何提交
2014/01/09 Javascript
JS阻止用户多次提交示例代码
2014/03/26 Javascript
js实现网页倒计时、网站已运行时间功能的代码3例
2014/04/14 Javascript
JavaScript模拟可展开、拖动与关闭的聊天窗口实例
2015/05/12 Javascript
AngularJS身份验证的方法
2016/02/17 Javascript
jQuery中each()、find()和filter()等节点操作方法详解(推荐)
2016/05/25 Javascript
深入分析javascript中的错误处理机制
2016/07/17 Javascript
js获取腾讯视频ID的方法
2016/10/03 Javascript
JS和jQuery通过this获取html标签中的属性值(实例代码)
2017/09/11 jQuery
vue导出html、word和pdf的实现代码
2018/07/31 Javascript
用Vue.js在浏览器中实现裁剪图像功能
2019/06/18 Javascript
vue 图片裁剪上传组件的实现
2020/11/12 Javascript
快速入手Python字符编码
2016/08/03 Python
pyqt5简介及安装方法介绍
2018/01/31 Python
python numpy 反转 reverse示例
2019/12/04 Python
在PyTorch中使用标签平滑正则化的问题
2020/04/03 Python
Python通过zookeeper实现分布式服务代码解析
2020/07/22 Python
Python getattr()函数使用方法代码实例
2020/08/10 Python
用pushplus+python监控亚马逊到货动态推送微信
2021/01/29 Python
html5中地理位置定位api接口开发应用小结
2013/01/04 HTML / CSS
加拿大快时尚零售商:Ardene
2018/02/14 全球购物
人力资源管理专业自荐书
2014/07/07 职场文书
党建工作目标管理责任书
2015/01/29 职场文书
小区保洁员岗位职责
2015/04/10 职场文书
餐厅如何利用“营销策略”扭转亏本局面
2019/10/15 职场文书
Nginx stream 配置代理(Nginx TCP/UDP 负载均衡)
2021/11/17 Servers
一篇文章告诉你如何实现Vue前端分页和后端分页
2022/02/18 Vue.js