发布于 2016-04-02 22:14:24 | 170 次阅读 | 评论: 0 | 来源: 网友投递
Symfony开源的PHP开发框架
Symfony是一个基于MVC模式的面向对象的PHP5框架。Symfony允许在一个web应用中分离事务控制,服务逻辑和表示层。
本文讲述了Symfony核心类。分享给大家供大家参考,具体如下:
Symfony的核心类
Symfony的MVC方式使用了一些你以后会经常碰到的类
1. sfController是控制器,他解码请求并专递至动作(action)
2. sfRequest存储了所有的请求元素(参数、Cookies、头信息等等)
3. sfResponse包含了响应头信息和内容,这些是最终要转换为HTML并送与用户的东西
4. 一个上下文(通过sfContext::getInstance()获取)保存了所有核心对象的参考和现有的配置信息,他可以在任何位置被访问。
就像你看到的,所有的symfony类使用sf前缀,这可以避免和你自己的类或变量冲突,而且可以使核心框架的类容易识别。
代码的组织
你已经知道了symfony应用的不同组成,但也许还不知道他是如何组织的。
项目结构:应用、模块和动作
在symfony里,一个项目是一组制定域名下的服务和操作,他们共享对象模型。
一个项目是由多个应用组成,一个应用有多个模块组成,一个模块可以包含多个动作。
项目结构图:
Symfony的根树结构及描述
apps/ |
包含了项目的应用,一个应用对应一个文件夹 |
Batch/ |
包含用于命令行执行或者调度的PHP代码 |
Cache/ |
缓存文件夹,需要777的权限 |
Config/ |
保存项目的基本配置 |
Data/ |
存放项目的数据文件,比如数据库结构、创建数据表的SQL文件,或者SQLite的数据库文件等 |
Doc/ |
存放项目文档,包括你自己的文档和PHPDoc产生的文档 |
Lib/ |
数据模型 |
Log/ |
日志文件夹,需要777权限 |
Plugins/ |
存放在应用中安装的插件 |
Test/ |
半酣单元和共性测试 |
Web/ |
WEB服务的根 |
希望本文所述对大家基于Symfony框架的PHP程序设计有所帮助。