笑谈配置,使用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 相关文章推荐
php 将bmp图片转为jpg等其他任意格式的图片
Jun 29 PHP
php设计模式 Composite (组合模式)
Jun 26 PHP
PHP中使用虚代理实现延迟加载技术
Nov 05 PHP
PHP多线程类及用法实例
Dec 03 PHP
PHP CURL 内存泄露问题解决方法
Feb 12 PHP
基于php的CMS中展示文章类实例分析
Jun 18 PHP
PHP新建类问题分析及解决思路
Nov 19 PHP
基于yaf框架和uploadify插件,做的一个导入excel文件,查看并保存数据的功能
Jan 24 PHP
php 中的closure用法详解
Jun 12 PHP
thinkPHP框架实现多表查询的方法
Jun 14 PHP
PHP7实现和CryptoJS的AES加密方式互通示例【AES-128-ECB加密】
Jun 08 PHP
Laravel框架数据库迁移操作实例详解
Apr 06 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
PHPLog php 程序调试追踪工具
2009/09/09 PHP
PHP数字字符串左侧补0、字符串填充和自动补齐的几种方法
2014/05/10 PHP
javascript让setInteval里的函数参数中的this指向特定的对象
2010/01/31 Javascript
Jquery AJAX 用于计算点击率(统计)
2010/06/30 Javascript
js中function()使用方法
2013/12/24 Javascript
javascript实现文本域写入字符时限定字数
2014/02/12 Javascript
wap手机图片滑动切换特效无css3元素js脚本编写
2014/07/28 Javascript
js实现表单检测及表单提示的方法
2015/08/14 Javascript
利用HTML5的画布Canvas实现刮刮卡效果
2015/09/06 Javascript
JS+HTML5实现的前端购物车功能插件实例【附demo源码下载】
2016/10/17 Javascript
jQuery基于Ajax方式提交表单功能示例
2017/02/10 Javascript
JavaScript中object和Object的区别(详解)
2017/02/27 Javascript
jQuery中ajax获取数据赋值给页面的实例
2017/12/31 jQuery
vue组件name的作用小结
2018/05/23 Javascript
vue router 组件的高级应用实例代码
2019/04/08 Javascript
express + jwt + postMan验证实现持久化登录
2019/06/05 Javascript
解决vue路由name同名,路由重复的问题
2020/08/05 Javascript
Vue实现小购物车功能
2020/12/21 Vue.js
[47:18]完美世界DOTA2联赛循环赛 IO vs FTD BO2第一场 11.05
2020/11/06 DOTA
python结合opencv实现人脸检测与跟踪
2015/06/08 Python
window环境pip切换国内源(pip安装异常缓慢的问题)
2019/12/31 Python
适合Python初学者的一些编程技巧
2020/02/12 Python
Python稀疏矩阵及参数保存代码实现
2020/04/18 Python
python中类与对象之间的关系详解
2020/12/16 Python
Python实现Word文档转换Markdown的示例
2020/12/22 Python
美国一家主打母婴用品的团购网站:zulily
2017/09/19 全球购物
英国外籍人士的在线超市:British Corner Shop
2019/06/03 全球购物
枚举和一组预处理的#define有什么不同
2016/09/21 面试题
大学活动邀请函
2014/01/28 职场文书
2014国庆节主题活动方案:快乐的国庆节
2014/09/16 职场文书
运动会广播稿200字(10篇)
2014/10/12 职场文书
银行中层干部培训心得体会
2016/01/11 职场文书
范文之农村基层党建工作报告
2019/10/24 职场文书
python实现腾讯滑块验证码识别
2021/04/27 Python
JS ES6异步解决方案
2021/04/29 Javascript
科学家测试在太空中培育人造肉,用于未来太空旅行
2022/04/29 数码科技