笑谈配置,使用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中文本操作的类
Mar 17 PHP
收集的PHP中与数组相关的函数
Mar 22 PHP
PHP时间格式控制符对照表分享
Jul 23 PHP
php实现下载限制速度示例分享
Feb 13 PHP
PHP浮点数精度问题汇总
May 13 PHP
再推荐十款免费的php开发工具
Nov 09 PHP
学习php设计模式 php实现单例模式(singleton)
Dec 07 PHP
基于PHP实现等比压缩图片大小
Mar 04 PHP
PHP实现上传图片到 zimg 服务器
Oct 19 PHP
PHP中Trait及其应用详解
Feb 14 PHP
yii2.0整合阿里云oss的示例代码
Sep 19 PHP
Yii1.1框架实现PHP极光推送消息通知功能
Sep 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
PHP中include()与require()的区别说明
2017/02/14 PHP
PHP+Redis 消息队列 实现高并发下注册人数统计的实例
2018/01/29 PHP
PHP htmlentities()函数用法讲解
2019/02/25 PHP
jQuery 对象中的类数组操作
2009/04/27 Javascript
js获取指定日期周数以及星期几的小例子
2014/06/27 Javascript
20条学习javascript的编程规范的建议
2014/11/28 Javascript
jQuery和AngularJS的区别浅析
2015/01/29 Javascript
javascript实现随机读取数组的方法
2015/08/03 Javascript
js实现仿Discuz文本框弹出层效果
2015/08/13 Javascript
Bootstrap按钮组件详解
2016/04/26 Javascript
详解AngularJS如何实现跨域请求
2016/08/22 Javascript
bootstrap table实现单击单元格可编辑功能
2017/03/28 Javascript
利用three.js画一个3D立体的正方体示例代码
2017/11/19 Javascript
原生js检测页面加载完毕的实例
2018/09/11 Javascript
实例分析vue循环列表动态数据的处理方法
2018/09/28 Javascript
js限制input只能输入有效的数字(第一个不能是小数点)
2018/09/28 Javascript
微信小程序页面间值传递的两种方法
2018/11/26 Javascript
微信小程序导航栏跟随滑动效果的实现代码
2019/05/14 Javascript
angularjs1.X 重构controller 的方法小结
2019/08/15 Javascript
微信小程序image图片加载完成监听
2019/08/31 Javascript
[02:27]2014DOTA2国际邀请赛 VG赛后采访:更大的挑战在等着我们
2014/07/13 DOTA
Python callable()函数用法实例分析
2018/03/17 Python
Python实现时钟显示效果思路详解
2018/04/11 Python
解决pandas read_csv 读取中文列标题文件报错的问题
2018/06/15 Python
Python字典的核心底层原理讲解
2019/01/24 Python
Python给图像添加噪声具体操作
2019/03/03 Python
使用Python串口实时显示数据并绘图的例子
2019/12/26 Python
JupyterNotebook 输出窗口的显示效果调整方法
2020/04/13 Python
Python定时任务APScheduler安装及使用解析
2020/08/07 Python
HTTP状态码详解
2021/03/18 杂记
房务中心文员岗位职责
2014/04/16 职场文书
社区义诊活动总结
2014/04/30 职场文书
初中学校对照检查材料
2014/08/19 职场文书
行政人事主管岗位职责
2015/04/11 职场文书
SQL Server中使用判断语句(IF ELSE/CASE WHEN )案例
2021/07/07 SQL Server
【海涛教你打DOTA】剑圣第一人称视角解说
2022/04/01 DOTA