本文讲述了Symfony核心类。分享给大家供大家参考,具体如下: Symfony的核心类 Symfony的MVC方式使用了一些你以后会经常碰到的类 1. sfController是控制器,他解码请求并专递至动作(action) 2. sfRequest存储了所有的请求元素(参数、Cookies、头信息等等
本文讲述了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程序设计有所帮助。