smarty学习之旅(二)
来源:互联网 发布:天猫数据分析 编辑:程序博客网 时间:2024/05/19 03:24
Smarty库文件
Smarty.class.phpSmarty_Compiler.class.phpConfig_File.class.phpdebug.tpl/core/*.php (all of them)/plugins/*.php (all of them)
创建Smarty实例
require('Smarty.class.php');$smarty = new Smarty;
设置Smarty库文件的一些方法
1.加入库文件目录的绝对路径require('/usr/local/lib/php/Smarty/Smarty.class.php');$smarty = new Smarty;Example 2-4. Add library directory to php_include path2.在include_path加入库文件目录// Edit your php.ini file, add the Smarty library// directory to the include_path and restart web server.// Then the following should work:require('Smarty.class.php');$smarty = new Smarty;Example 2-5. Set SMARTY_DIR constant manually3.手工设置SMARTY_DIR常量define('SMARTY_DIR','/usr/local/lib/php/Smarty/');require(SMARTY_DIR.'Smarty.class.php');$smarty = new Smarty;
库文件已经搞定,该是设置为你的应用程序配置其他有关Smarty的目录的时候了。Smarty要求4个目录,默认下命名为:tempalates, templates_c, configs and cache。每个都是可以自定义的,可以修改Smarty类属性: $template_dir, $compile_dir, $config_dir, and $cache_dir respectively。强烈推荐你为每个用到smarty的应用程序设置单一的目录。确定你已经知道了你的web服务器文件根目录。在我们的例子里,文件根目录是:"/locolhost/docs/"Smarty的4个目录 只可以被那些库文件访问,不可以被网络上的浏览器访问的目录。因此为避免任何安全问题,要求将那4个目录和网页文件目录(就是浏览器看的)分开来。对于可被访问的目录,我们把目录名定为guestbook。你可以对任何程序使用相同的环境,只要将"guestbook"改成你要的名字就可以了。我们将把Smarty目录放在 "/locolhost/smarty/guestbook/"下。
技术提示:建立web服务器很方便,这个文件可以被web服务器自动识别。如果你访问”http://www.mydomain.com/guestbook/“,你不需要在URL上输入”index.php”,index.php脚本就可以被执行。在Apache服务器中,可以通过在DirectoryIndex的后面添加”index.php” 文件(用反斜杠分开每个入口)来完成设置。
文件结构设置如下:
/localhost/Smarty/Smarty.class.php/localhost/lib/php/Smarty/Smarty_Compiler.class.php/localhost/lib/php/Smarty/Config_File.class.php/localhost/lib/php/Smarty/debug.tpl/localhost/lib/php/Smarty/core/*.php/localhost/lib/php/Smarty/plugins/*.php/localhost/smarty/guestbook/templates//localhost/smarty/guestbook/templates_c//localhost/smarty/guestbook/configs//localhost/smarty/guestbook/cache//localhost/docs/guestbook/index.php
文件权限设置
chown nobody:nobody /localhost/smarty/guestbook/templates_c/
chmod 770 /localhost/smarty/guestbook/templates_c/
chown nobody:nobody /localhost/smarty/guestbook/cache/
chmod 770 /localhost/smarty/guestbook/cache/
文件启动设置
// load Smarty libraryrequire('Smarty.class.php');$smarty = new Smarty;$smarty->template_dir = '/localhost/smarty/guestbook/templates/';$smarty->compile_dir = '/localhost/smarty/guestbook/templates_c/';$smarty->config_dir = '/localhost/smarty/guestbook/configs/';$smarty->cache_dir = '/localhost/smarty/guestbook/cache/';$smarty->assign('name','Ned');$smarty->display('index.tpl');
php拓展类,将启动和配置smarty封装起来实现
require('Smarty.class.php');// The setup.php file is a good place to load// required application library files, and you// can do that right here. An example:// require('guestbook/guestbook.lib.php');是一个很好的加载应用程序的类库文件(就是扩展类)//例如你可以在index文件里包含它class Smarty_GuestBook extends Smarty { function Smarty_GuestBook() { // Class Constructor. These automatically get set with each new instance. //类构造函数.创建实例的时候自动配置 $this->Smarty(); $this->template_dir = '/web/www.mydomain.com/smarty/guestbook/templates/'; $this->compile_dir = '/web/www.mydomain.com/smarty/guestbook/templates_c/'; $this->config_dir = '/web/www.mydomain.com/smarty/guestbook/configs/'; $this->cache_dir = '/web/www.mydomain.com/smarty/guestbook/cache/'; $this->caching = true; $this->assign('app_name','Guest Book'); }}启动方式require('guestbook/setup.php');$smarty = new Smarty_GuestBook;$smarty->assign('name','Ned');$smarty->display('index.tpl');
0 0
- smarty学习之旅(二)
- php之smarty学习二
- Smarty学习笔记(二)
- Smarty学习笔记(二)
- Smarty学习之旅(三)
- smarty学习笔记二
- Smarty模板技术学习(二)
- SMARTY(二)
- 自定义Smarty(二)
- Smarty快速入门之二
- PHP模板引擎Smarty(二)深入浅出之Smarty模板引擎工作机制(一)
- PHP模板引擎Smarty(三)深入浅出之Smarty模板引擎工作机制(二)
- smarty实现分页(二)之数据库连接类
- PHP学习之路之Smarty自定义函数(上)
- PHP学习之路之Smarty自定义函数(中)
- PHP学习之路之Smarty自定义函数(下)
- smarty学习笔记之新手入门
- Smarty学习之基础语法
- bzoj 1935: [Shoi2007]Tree 园丁的烦恼
- 表单验证—正则表达式
- Hibernate的简单入门介绍
- 自己写的按钮点击倒计时控件
- TimesTen 应用层数据库缓存学习:13. 全局数据缓存(cache grid)
- smarty学习之旅(二)
- linux 的vi 编辑命令
- intellij创建安卓项目时Crunching cruncher ***.png failed的解决
- Android Studio如何使用Git提交代码到GitHub和OsChina并解决冲突
- (二)Mina源码解析之IoService
- 欢迎使用CSDN-markdown编辑器
- iOS中允许后台应用程序刷新在开发中的注意事项
- 一个简单的页面,设置背景图平铺、table布局居中、响应式布局及响应式布局中em尺寸单位使用
- Android中viewpager轮播图小点儿