笑谈配置,使用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 相关文章推荐
JoshChen_web格式编码UTF8-无BOM的小细节分析
Aug 16 PHP
php对二维数组进行排序的简单实例
Dec 19 PHP
异步加载技术实现当滚动条到最底部的瀑布流效果
Sep 16 PHP
PHP中substr()与explode()函数用法分析
Nov 24 PHP
php实现的一个简单json rpc框架实例
Mar 30 PHP
PHP批量去除BOM头代码分享
Jun 26 PHP
PHP代码实现表单数据验证类
Jul 28 PHP
Windows Server 2008 R2和2012中PHP连接MySQL过慢的解决方法
Jul 02 PHP
PHP实现加密文本文件并限制特定页面的存取的效果
Oct 21 PHP
Thinkphp5 如何隐藏入口文件index.php(URL重写)
Oct 16 PHP
在Laravel中使用MongoDB的方法示例
Nov 11 PHP
laravel框架分组控制器和分组路由实现方法示例
Jan 25 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
全国FM电台频率大全 - 19 广东省
2020/03/11 无线电
PHP使用http_build_query()构造URL字符串的方法
2016/04/02 PHP
Yii中CGridView禁止列排序的设置方法
2016/07/12 PHP
php实现xml转换数组的方法示例
2017/02/03 PHP
thinkPHP+ajax实现统计页面pv浏览量的方法
2017/03/15 PHP
JavaScript 比较时间大小的代码
2010/04/24 Javascript
Javascript 面向对象编程(一) 封装
2011/08/28 Javascript
javaScript函数中执行C#代码中的函数方法总结
2013/08/07 Javascript
JQuery插件jcarousellite的参数中文说明
2015/05/11 Javascript
以WordPress为例讲解jQuery美化页面Title的方法
2016/05/23 Javascript
Node.js开启Https的实践详解
2016/10/25 Javascript
jQuery实现百度登录框的动态切换效果
2017/04/21 jQuery
nodejs实现简单的gulp打包
2017/12/21 NodeJs
Vue验证码60秒倒计时功能简单实例代码
2018/06/22 Javascript
浅谈Vue.js路由管理器 Vue Router
2018/08/16 Javascript
vue实现键盘输入支付密码功能
2018/08/18 Javascript
详解微信小程序开发用户授权登陆
2019/04/24 Javascript
js脚本中执行java后台代码方法解析
2019/10/11 Javascript
微信小程序网络请求实现过程解析
2019/11/06 Javascript
[01:45]DOTA2新英雄“神谕者”全方位展示
2014/11/21 DOTA
[56:57]LGD vs VP 2019DOTA2国际邀请赛淘汰赛 胜者组赛BO3 第一场 8.20.mp4
2019/08/22 DOTA
Python中关于字符串对象的一些基础知识
2015/04/08 Python
Python实现给文件添加内容及得到文件信息的方法
2015/05/28 Python
Nginx搭建HTTPS服务器和强制使用HTTPS访问的方法
2015/08/16 Python
Python自动化测试ConfigParser模块读写配置文件
2016/08/15 Python
Python脚本获取操作系统版本信息
2016/12/17 Python
Python中第三方库Requests库的高级用法详解
2017/03/12 Python
python随机数分布random测试
2018/08/27 Python
wxPython实现带颜色的进度条
2019/11/19 Python
python GUI库图形界面开发之PyQt5信号与槽机制、自定义信号基础介绍
2020/02/25 Python
python 通过pip freeze、dowload打离线包及自动安装的过程详解(适用于保密的离线环境
2020/12/14 Python
Django中的DateTimeField和DateField实现
2021/02/24 Python
美国购买新书和二手书网站:Better World Books
2018/10/31 全球购物
职称自我鉴定
2013/10/15 职场文书
2015年学校后勤工作总结
2015/04/08 职场文书
Win11怎样将锁屏账户头像图片改成动画视频
2021/11/21 数码科技