Smarty环境配置与使用入门教程


Posted in PHP onMay 11, 2016

本文实例讲述了Smarty环境配置与使用方法。分享给大家供大家参考,具体如下:

下载Smarty(这里以Smarty-2.6.26为例)。解压下载的文件(目录结构还蛮复杂的)。接下来演示给大家一个安装实例,看过应该会举一反三的。

(1) 在根目录下建立了新的目录learn/,再在learn/里建立一个目录smarty/。将刚才解压缩出来的目录的libs/拷贝到smarty/里,再在smarty/里新建templates目录,templates里新建cache/,templates/,templates_c/, config/。

(2) 新建一个模板文件:index.tpl,将此文件放在learn/smarty/templates/templates目录下,代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTDHTML 4.01
<html>
<head>
<metahttp-equiv="Content-Type" content="text/html;charset=gb2312">
<title>Smarty</title></head>
<body>{#$hello#}</body>
</html>

新建index.php,将此文件放在learn/下:

<?php
require 'smarty/libs/Smarty.class.php';
$smarty = new Smarty;//设置各个目录的路径,这里是安装的重点
$smarty->template_dir ="smarty/templates/templates";
$smarty->compile_dir ="smarty/templates/templates_c";
$smarty->config_dir = "smarty/templates/config";
$smarty->cache_dir ="smarty/templates/cache";
//smarty模板有高速缓存的功能,如果这里是true的话即打开caching,但是会造成网页不立即更新的问题,当然也可以通过其他的办法解决
$smarty->caching = false;
$smarty->left_delimiter = "{#"; //重新定义边界,因为默认边界“{}“符,在html页面中嵌入js脚本文件编写代码段时使用的就是”{}“符,自定义边界符还可以是<{ }>, {/ /} 等
$smarty->right_delimiter = "#}";
$hello = "Hello World!";//赋值
$smarty->assign("hello",$hello);//引用模板文件
$smarty->display('index.tpl');?>

(3) 执行index.php就能看到Hello World!了。

希望本文所述对大家基于smarty模板的PHP程序设计有所帮助。

PHP 相关文章推荐
Codeigniter整合Tank Auth权限类库详解
Jun 12 PHP
ThinkPHP3.1新特性之Action参数绑定
Jun 19 PHP
PHP实现链式操作的核心思想
Jun 23 PHP
PHP中把对象数组转换成普通数组的方法
Jul 10 PHP
PHP页面转UTF-8中文编码乱码的解决办法
Oct 20 PHP
php创建无限级树型菜单
Nov 05 PHP
PHP实现路由映射到指定控制器
Aug 13 PHP
php5.2的curl-bug 服务器被php进程卡死问题排查
Sep 19 PHP
PHP用函数嵌入网站访问量计数器
Oct 27 PHP
PHP设计模式之装饰器模式定义与用法详解
Apr 02 PHP
掌握PHP垃圾回收机制详解
Mar 13 PHP
PHP正则表达式函数preg_replace用法实例分析
Jun 04 PHP
理解php依赖注入和控制反转
May 11 #PHP
php结合web uploader插件实现分片上传文件
May 10 #PHP
配置Nginx+PHP的正确思路与过程
May 10 #PHP
WordPress中设置Post Type自定义文章类型的实例教程
May 10 #PHP
php+MySQL实现登录时验证登录名和密码是否正确
May 10 #PHP
PHP7+Nginx的配置与安装教程详解
May 10 #PHP
php+mysql实现的二级联动菜单效果详解
May 10 #PHP
You might like
一条久听不愿放下的DIY森海MX500,三言两语话神奇
2021/03/02 无线电
php设计模式 Bridge (桥接模式)
2011/06/26 PHP
php调用nginx的mod_zip模块打包ZIP文件
2014/06/11 PHP
PHP Warning: Module 'modulename' already loaded in问题解决办法
2015/03/16 PHP
JavaScript 变量命名规则
2009/09/23 Javascript
利用js(jquery)操作Cookie的方法说明
2013/12/19 Javascript
js查找某元素中的所有图片地址的方法
2014/01/16 Javascript
JavaScript实现网页截图功能
2014/10/16 Javascript
js实现添加可信站点、修改activex安全设置,禁用弹出窗口阻止程序
2016/08/17 Javascript
fullpage.js全屏滚动插件使用实例
2016/09/06 Javascript
详解VUE的状态控制与延时加载刷新
2017/03/27 Javascript
vue 数组和对象不能直接赋值情况和解决方法(推荐)
2017/10/25 Javascript
vue项目中axios使用详解
2018/02/07 Javascript
Vue中this.$router.push参数获取方法
2018/02/27 Javascript
vue 表单验证按钮事件交由父组件触发的方法
2018/12/17 Javascript
原生javascript制作的拼图游戏实现方法详解
2020/02/23 Javascript
js实现简单贪吃蛇游戏
2020/05/15 Javascript
基于vue 动态菜单 刷新空白问题的解决
2020/08/06 Javascript
Vue中 axios delete请求参数操作
2020/08/25 Javascript
[49:13]DOTA2上海特级锦标赛C组资格赛#1 OG VS LGD第一局
2016/02/27 DOTA
Python中的下划线详解
2015/06/24 Python
Windows平台Python连接sqlite3数据库的方法分析
2017/07/12 Python
高效测试用例组织算法pairwise之Python实现方法
2017/07/19 Python
对PyTorch torch.stack的实例讲解
2018/07/30 Python
python学习——内置函数、数据结构、标准库的技巧(推荐)
2019/04/18 Python
Django框架获取form表单数据方式总结
2020/04/22 Python
python3中sys.argv的实例用法
2020/04/24 Python
高考考python编程是真的吗
2020/07/20 Python
Pandas中两个dataframe的交集和差集的示例代码
2020/12/13 Python
pycharm 复制代码出现空格的解决方式
2021/01/15 Python
一款基于css3的列表toggle特效实例教程
2015/01/04 HTML / CSS
欧洲高端品牌直销店:Fashionesta
2016/08/31 全球购物
Java文件和目录(IO)操作
2014/08/26 面试题
成立公司计划书
2014/05/07 职场文书
领导班子党的群众路线教育实践活动对照检查材料
2014/09/25 职场文书
社区母亲节活动总结
2015/02/10 职场文书