笑谈配置,使用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 设计模式之 单例模式
Dec 19 PHP
纯真IP数据库的应用 IP地址转化成十进制
Jun 14 PHP
php中var_export与var_dump的区别分析
Aug 21 PHP
让Json更懂中文(JSON_UNESCAPED_UNICODE)
Oct 27 PHP
php数据结构与算法(PHP描述) 快速排序 quick sort
Jun 21 PHP
PHP中$_FILES的使用方法及注意事项说明
Feb 14 PHP
PHP+MySQL实现的简单投票系统实例
Feb 24 PHP
php使用Jpgraph创建3D饼形图效果示例
Feb 15 PHP
PHP解耦的三重境界(浅谈服务容器)
Mar 13 PHP
php curl批处理实现可控并发异步操作示例
May 09 PHP
laravel 实现用户登录注销并限制功能
Oct 24 PHP
PHP中通过getopt解析GNU C风格命令行选项
Nov 18 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 日期和时间的处理-郑阿奇(续)
2011/07/04 PHP
使用php判断浏览器的类型和语言的函数代码
2013/02/28 PHP
php通过asort()给关联数组按照值排序的方法
2015/03/18 PHP
php使用imagecopymerge()函数创建半透明水印
2018/01/25 PHP
PHP内存溢出优化代码详解
2021/02/26 PHP
PHP高并发和大流量解决方案整理
2021/03/09 PHP
JS图片浏览组件PhotoLook的公开属性方法介绍和进阶实例代码
2010/11/09 Javascript
JS等比例缩小图片尺寸的实例
2013/02/27 Javascript
浅析JavaScript中的类型和对象
2013/11/29 Javascript
javascript间隔定时器(延时定时器)学习 间隔调用和延时调用
2014/01/13 Javascript
Javascript学习笔记之 函数篇(二) : this 的工作机制
2014/06/24 Javascript
TypeScript 中接口详解
2015/06/19 Javascript
jQuery三级下拉列表导航菜单代码分享
2020/04/15 Javascript
理解javascript封装
2016/02/23 Javascript
在Mac OS上安装使用Node.js的项目自动化构建工具Gulp
2016/06/18 Javascript
JS实现两周内自动登录功能
2017/03/23 Javascript
jQuery中map函数的两种方式
2017/04/07 jQuery
vue2.0 与 bootstrap datetimepicker的结合使用实例
2017/05/22 Javascript
js实现图片粘贴上传到服务器并展示的实例
2017/11/08 Javascript
微信web端后退强制刷新功能的实现代码
2018/03/04 Javascript
vue+axios+mock.js环境搭建的方法步骤
2018/08/28 Javascript
爬虫利器Puppeteer实战
2019/01/09 Javascript
Vue 中 a标签上href无法跳转的解决方式
2019/11/12 Javascript
Python 3.x 连接数据库示例(pymysql 方式)
2017/01/19 Python
Python自定义简单图轴简单实例
2018/01/08 Python
python实现小球弹跳效果
2019/05/10 Python
关于windows下Tensorflow和pytorch安装教程
2020/02/04 Python
django filter过滤器实现显示某个类型指定字段不同值方式
2020/07/16 Python
HTML5 File接口在web页面上使用文件下载
2017/02/27 HTML / CSS
加拿大快时尚零售商:Ardene
2018/02/14 全球购物
物流仓储实习自我鉴定
2013/09/25 职场文书
《植物妈妈有办法》教学反思
2014/02/25 职场文书
行政办公室岗位职责
2014/03/18 职场文书
超市仓管员岗位职责
2014/04/07 职场文书
无传销社区工作方案
2014/05/13 职场文书
读《儒林外史》有感:少一些功利,多一些真诚
2020/01/19 职场文书