0

0

PHP做Web开发的MVC框架(Smarty使用说明 )

php中文网

php中文网

发布时间:2016-07-09 09:10:05

|

1261人浏览过

|

来源于php中文网

原创

      PHP做Web开发的MVC框架(Smarty使用说明 )
一、Smarty简明教程
1.安装演示 
 下载最新版本的Smarty-3.1.12,然后解压下载的文件。接下来演示Smarty自带的demo例子。 
(1)下载地址:http://www.smarty.net/download 
(2)在你的WEB服务器根目录下建立新目录,这里我在/var/www下创建yqting/目录,然后将解压之后的目录中的demo/和libs/目录复制到/var/www/yqting/目录下。 
(3)这里要特别注意demo/目录下cache/和template_c/两个目录,一定要设置它们 为可读写权限
  chmod 777 cache/ 
  chmod 777 template_c/ 
(4)启动apache。在浏览器中输入http://localhost/yqting/demo/index.php ,这样一个简单的Smarty demo就实现了。 
2.Smarty目录结构 
(1)以/var/www/yqting目录开始分析: 
  yqting/ 
    ├── demo 
    │ ├── cache   缓冲文件存放目录 
    │ ├── configs    配置文件目录 
    │ ├── index.php 
    │ ├── plugins    自定义的一些实用插件 
    │ ├── templates    模板目录 
    │ └── templates_c   编译后的文件存放目录 
    └── libs
       ├── debug.tpl   debug模板 
       ├── plugins    自定义的一些实用插件
       ├── SmartyBC.class.php    支持Smarty 2兼容 
       ├── Smarty.class.php   Smarty类定义文件 
       └── sysplugins    Smarty核心功能插件,不需要进行修改 
(2)添加自己定义的插件 
  上述目录结构中,其实最核心的部分是libs/目录,同时这部分也是不允许修改的。
  而要添加自己的插件,一种方法是将自己定义的插件放在libs/plugins/目录下,另一种方式是 单独创建一个自己plugins/目录,同时还要创建cache/、configs/、templates/和templates _c/目录,而且要保证cache/和templates_c/目录的可读写权限。 
  不难发现,其实上述例子中,demo/目录就是一个包含了自己定义的插件的完整目录。 我们可以参照demo/目录来实现自己的程序。 
3.实现一个简单的例子 
(1)在/var/www/yqting/下创建目录weibo/,然后在weibo/目录下创建cache/、 configs/、templates/和templates_c/目录,修改cache/和templates_c/目录的权限为可读写。   
(2)新建一个模板文件:index.tpl,将此文件放在/var/www/yqting/weibo/templates目录下,代码如下: 
   
   
  
   Smarty 
   
  
  username:{$Name}
   
  
  这段代码很简单,有什么不明白的继续往下看,不要着急!每一个做显示的.tpl文件都会对应一个处理业务逻辑的.php文件,下面介绍这个.php文件。
(3)新建index.php,将此文件放在/var/www/yqting/weibo/下,代码如下: 
    /*sample example */
  
require '../libs/Smarty.class.php';
  
$smarty = new Smarty();
  
$username = "Smarty";
  $smarty->assign("Name",$username);
  
$smarty->display('index.tpl');
  
?>
  其中require使用的路径一定要正确,可以参照上面的目录结构看一下!
(4)在Smarty3中,Smarty类的构造函数中已经指定了template_dir、compile_dir 、config_dir和cache_dir,不需要再次指定。     
(5) 在浏览器中输入http://localhost/yqting/weibo/index.php,就可以看到输出的信息username:Smarty 了。 
二、解释smarty的程序 
  我们可以看到,smarty的程序部分实际就是符合php语言规范的一组代码,我们依次来解释一下:   
(1)/**/语句:
  包含的部分为程序篇头注释。主要的内容应该为对程序的作用,版权与作者及编写时间 做一个简单的介绍,这在smarty中不是必需的,但从程序的风格来讲,这是一个好的风格。   
(2)include_once语句:
  它将安装到网站的smarty文件包含到当前文件中,注意包含的路径一定要写正确。   
(3)$smarty = new Smarty(): 
  这一句新建一个Smarty对象$smarty,简单的一个对象的实例化。   
(4)$smarty->templates="": 
  这一句指明$smarty对象使用tpl模板时的路径,它是一个目录,在没有这一句时, Smarty默认的模板路径为当前目录的templates目录,实际在写程序时,我们要将这一 句写明,这也是一种好的程序风格。   
(5)$smarty->templates_c="": 
  这一句指明$smarty对象进行编译时的目录。在模板设计篇我们已经知道Smarty是 一种编译型模板语言,而这个目录,就是它编译模板的目录,要注意,如果站点位于linux 服务器上,请确保 teamplates_c里定义的这个目录具有可写可读权限,默认情况下它的 编译目录是当前目录下的templates_c,出于同样的理由我们将其明确的写出来。   
(6)分隔符 $smarty->left_delimiter与$smarty->right_delimiter: 
  指明在查找模板变量时的左右分割符。默认情况下为"{"与"}",但在实际中因为我们要 在模板中使用
                

相关专题

更多
俄罗斯Yandex引擎入口
俄罗斯Yandex引擎入口

2026年俄罗斯Yandex搜索引擎最新入口汇总,涵盖免登录、多语言支持、无广告视频播放及本地化服务等核心功能。阅读专题下面的文章了解更多详细内容。

178

2026.01.28

包子漫画在线官方入口大全
包子漫画在线官方入口大全

本合集汇总了包子漫画2026最新官方在线观看入口,涵盖备用域名、正版无广告链接及多端适配地址,助你畅享12700+高清漫画资源。阅读专题下面的文章了解更多详细内容。

35

2026.01.28

ao3中文版官网地址大全
ao3中文版官网地址大全

AO3最新中文版官网入口合集,汇总2026年主站及国内优化镜像链接,支持简体中文界面、无广告阅读与多设备同步。阅读专题下面的文章了解更多详细内容。

79

2026.01.28

php怎么写接口教程
php怎么写接口教程

本合集涵盖PHP接口开发基础、RESTful API设计、数据交互与安全处理等实用教程,助你快速掌握PHP接口编写技巧。阅读专题下面的文章了解更多详细内容。

2

2026.01.28

php中文乱码如何解决
php中文乱码如何解决

本文整理了php中文乱码如何解决及解决方法,阅读节专题下面的文章了解更多详细内容。

4

2026.01.28

Java 消息队列与异步架构实战
Java 消息队列与异步架构实战

本专题系统讲解 Java 在消息队列与异步系统架构中的核心应用,涵盖消息队列基本原理、Kafka 与 RabbitMQ 的使用场景对比、生产者与消费者模型、消息可靠性与顺序性保障、重复消费与幂等处理,以及在高并发系统中的异步解耦设计。通过实战案例,帮助学习者掌握 使用 Java 构建高吞吐、高可靠异步消息系统的完整思路。

8

2026.01.28

Python 自然语言处理(NLP)基础与实战
Python 自然语言处理(NLP)基础与实战

本专题系统讲解 Python 在自然语言处理(NLP)领域的基础方法与实战应用,涵盖文本预处理(分词、去停用词)、词性标注、命名实体识别、关键词提取、情感分析,以及常用 NLP 库(NLTK、spaCy)的核心用法。通过真实文本案例,帮助学习者掌握 使用 Python 进行文本分析与语言数据处理的完整流程,适用于内容分析、舆情监测与智能文本应用场景。

24

2026.01.27

拼多多赚钱的5种方法 拼多多赚钱的5种方法
拼多多赚钱的5种方法 拼多多赚钱的5种方法

在拼多多上赚钱主要可以通过无货源模式一件代发、精细化运营特色店铺、参与官方高流量活动、利用拼团机制社交裂变,以及成为多多进宝推广员这5种方法实现。核心策略在于通过低成本、高效率的供应链管理与营销,利用平台社交电商红利实现盈利。

122

2026.01.26

edge浏览器怎样设置主页 edge浏览器自定义设置教程
edge浏览器怎样设置主页 edge浏览器自定义设置教程

在Edge浏览器中设置主页,请依次点击右上角“...”图标 > 设置 > 开始、主页和新建标签页。在“Microsoft Edge 启动时”选择“打开以下页面”,点击“添加新页面”并输入网址。若要使用主页按钮,需在“外观”设置中开启“显示主页按钮”并设定网址。

72

2026.01.26

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP课程
PHP课程

共137课时 | 10万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 11.2万人学习

PHP新手语法线上课程教学
PHP新手语法线上课程教学

共13课时 | 0.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号