• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

陌路车客

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

smarty安装及例子

环境:

smarty3.1.16

1.在http://www.smarty.net/download下载最新smarty包,window选择zips,linux下选择tar.gz。以windows为例,下载后解压,如f:\smarty。

2.把解压出来的smarty目录里lib目录拷贝到test里,重命名为smarty。在test目录下,创建tpls目录,在tpls目录下,创建templates、templates_c、configs、cache目录,这几个目录分别是模板目录(必要),解析目录(必要),配置目录(可选),缓存目录(可选),

smarty的php代码和这四个目录是同一个级的,html代码放在templates下。

目录树如下

 

代码部分:

1.在test/smarty下创建utf-8无bom格式的main.php,配置smarty的一些成员属性。

 1 <?php
 2 include("Smarty.class.php");
 3 define('SMARTY_ROOT', '../tpls');
 4 $tpl = new Smarty();
 5 $tpl->template_dir = SMARTY_ROOT."/templates/";//设置模板文件的存放目录
 6 $tpl->compile_dir = SMARTY_ROOT."/templates_c/";//设置编译文件的存放目录
 7 $tpl->config_dir = SMARTY_ROOT."/configs/";//设置配置文件的存放目录
 8 $tpl->cache_dir = SMARTY_ROOT."/cache/";//设置缓存文件的存放目录
 9 $tpl->caching=1;//开启缓存
10 $tpl->cache_lifetime=60*60*24;//有效时间为一天
11 $tpl->left_delimiter = '[';//smarty语言的左右结束符
12 $tpl->right_delimiter = ']';
13 ?>

我们知道大括号是smarty的默认定界符,但在和javascript、css等结合时可能会产生冲突,所以这里我们设定为[和]。

 

2.在test/tpls/templates下面新建html.tpl模板文件,就是在html中加入smarty变量。改模板相当于表现层。

html.tpl的代码如下:

 1 <html>
 2 <head>
 3 <meta http-equiv="Content-type" content="text/html; charset=utf-8">
 4 <title> 
 5 [$title]
 6 </title> 
 7 </head> 
 8 <body> 
 9 [$content]
10 </body> 
11 </html>

 

3.在test目录下创建smarty.php,该文件相当于驱动层,给上面表现层的变量赋好值,然后显示出来。

smarty.php的代码如下:

1 <?php
2     include("smarty/main.php");
3     $tpl->assign("title","迟到");
4     $tpl->assign("content","罚款500元!");
5     $tpl->display("tpls/templates/html.tpl");
6 ?>

 

4.在浏览器中运行smarty.php即可。

 

 

posted on 2014-02-17 15:29  陌路车客  阅读(297)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3