如何在PHP中利用Smarty开发一个MVC框架

介绍

本篇文章为大家展示了如何在PHP中利用Smarty开发一个MVC框架,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

<强>一、Smarty简明教程
1。安装演示
下载最新版本的Smarty-3.1.12,然后解压下载的文件。接下来演示Smarty自带的演示例子。
(1)下载地址:http://www.smarty.net/download
(2)在你的WEB服务器根目录下建立新目录,这里我在/var/www下创建yqting/目录,然后将解压之后的目录中的演示和/libs/目录复制到/var/www/yqting/目录下。
(3)这里要特别注意演示/目录下缓存/和template_c/两个目录,<强>
chmod 777缓存/
chmod 777 template_c/
(4)启动apache。在浏览器中输入http://localhost/yqting/demo/index。php,这样一个简单的Smarty演示就实现了。
<强> 2。Smarty目录结构
(1)以/var/www/yqting目录开始分析:
yqting/
├──演示
│├──cache ,缓冲文件存放目录
│├──configs ,,配置文件目录
│├──指数。php
│├──plugins ,,自定义的一些实用插件
│├──templates ,,模板目录
│└──templates_c ,编译后的文件存放目录
└──填词
,├──debug.tpl ,调试模板
,├──plugins ,,自定义的一些实用插件
,,├──SmartyBC.class.php ,,2支持Smarty兼容
,,├──Smarty.class.php ,Smarty类定义文件
,,└──sysplugins ,,Smarty核心功能插件,不需要进行修改
(2)添加自己定义的插件
上述目录结构中,其实最核心的部分是libs/目录,同时这部分也是不允许修改的。
而要添加自己的插件,一种方法是将自己定义的插件放在libs/插件/目录下,另一种方式是单独创建一个自己的插件/目录,同时还要创建缓存/配置/,模板和模板_c/目录,而且要保证缓存/和/templates_c目录的可读写权限。
不难发现,其实上述例子中,演示/目录就是一个包含了自己定义的插件的完整目录。我们可以参照演示/目录来实现自己的程序。
<强> 3。实现一个简单的例子
(1)在/var/www/yqting/下创建目录微博/,然后在微博/目录下创建缓存/配置/,/模板和templates_c/目录,修/改缓存和templates_c/目录的权限为可读写。
(2)新建一个模板文件:索引。被称为tpl,将此文件放在/var/www/yqting/微博/模板目录下,代码如下:
& lt; html>
& lt; head>
& lt; metahttp-equiv=癈ontent-Type"内容=皌ext/html; charset=gb2312"在
,& lt; title> Smarty
& lt;/head>
& lt; body>
用户名:{$名称}
& lt;/body>
& lt;/html>这段代码很简单,有什么不明白的继续往下看,不要着急!每一个做显示的。tpl文件都会对应一个处理业务逻辑的。php文件,下面介绍这个。php文件。
(3)新建索引。php将此文件放在/var/www/yqting/微博/下,代码如下:
& lt; ?php/* */例子需要& # 39;. ./libs/Smarty.class.php& # 39;;$ smarty=新smarty ();$ username=癝marty";$ smarty→分配(“Name",美元的用户名);$ smarty→显示(& # 39;index.tpl& # 39;);比;其中需要使用的路径一定要正确,可以参照上面的目录结构看一下。
(4)在Smarty3中,Smarty类的构造函数中已经指定了template_dir, compile_dir, config_dir和cache_dir,不需要再次指定。
(5)在浏览器中输入http://localhost/yqting/weibo/index。null

如何在PHP中利用Smarty开发一个MVC框架