Symfony核心类概述


Posted in PHP onMarch 17, 2016

本文讲述了Symfony核心类。分享给大家供大家参考,具体如下:

Symfony的核心类

Symfony的MVC方式使用了一些你以后会经常碰到的类

1. sfController是控制器,他解码请求并专递至动作(action)

2. sfRequest存储了所有的请求元素(参数、Cookies、头信息等等)

3. sfResponse包含了响应头信息和内容,这些是最终要转换为HTML并送与用户的东西

4. 一个上下文(通过sfContext::getInstance()获取)保存了所有核心对象的参考和现有的配置信息,他可以在任何位置被访问。

就像你看到的,所有的symfony类使用sf前缀,这可以避免和你自己的类或变量冲突,而且可以使核心框架的类容易识别。

代码的组织

你已经知道了symfony应用的不同组成,但也许还不知道他是如何组织的。

项目结构:应用、模块和动作

在symfony里,一个项目是一组制定域名下的服务和操作,他们共享对象模型。

一个项目是由多个应用组成,一个应用有多个模块组成,一个模块可以包含多个动作。

项目结构图:

Symfony核心类概述

Symfony的根树结构及描述

apps/ 包含了项目的应用,一个应用对应一个文件夹
Batch/ 包含用于命令行执行或者调度的PHP代码
Cache/ 缓存文件夹,需要777的权限
Config/ 保存项目的基本配置
Data/ 存放项目的数据文件,比如数据库结构、创建数据表的SQL文件,或者SQLite的数据库文件等
Doc/ 存放项目文档,包括你自己的文档和PHPDoc产生的文档
Lib/ 数据模型
Log/ 日志文件夹,需要777权限
Plugins/ 存放在应用中安装的插件
Test/ 半酣单元和共性测试
Web/ WEB服务的根

希望本文所述对大家基于Symfony框架的PHP程序设计有所帮助。

PHP 相关文章推荐
php模拟post提交数据的方法
Feb 12 PHP
PHP获取一年中每个星期的开始和结束日期的方法
Feb 12 PHP
PHP获取远程图片并保存到本地的方法
May 12 PHP
php中memcache 基本操作实例
May 17 PHP
php中array_multisort对多维数组排序的方法
Jun 21 PHP
合格的PHP程序员必备技能
Nov 13 PHP
Zend Framework教程之Zend_Config_Ini用法分析
Mar 23 PHP
php异步:在php中使用fsockopen curl实现类似异步处理的功能方法
Dec 10 PHP
php如何修改SESSION的生存存储时间的实例代码
Jul 05 PHP
PHP html_entity_decode()函数讲解
Feb 25 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
Feb 27 PHP
PHP实现倒计时功能
Nov 16 PHP
使用symfony命令创建项目的方法
Mar 17 #PHP
Symfony实现行为和模板中取得request参数的方法
Mar 17 #PHP
Symfony模板的快捷变量用法实例
Mar 17 #PHP
Symfony2框架创建项目与模板设置实例详解
Mar 17 #PHP
Symfony2学习笔记之插件格式分析
Mar 17 #PHP
Symfony2学习笔记之系统路由详解
Mar 17 #PHP
Symfony2学习笔记之控制器用法详解
Mar 17 #PHP
You might like
用PHP的ob_start() 控制您的浏览器cache
2009/08/03 PHP
探讨:如何使用PHP实现计算两个日期间隔的年、月、周、日数
2013/06/13 PHP
PHP实现统计所有字符在字符串中出现次数的方法
2017/10/17 PHP
php实现微信企业付款到个人零钱功能
2018/10/09 PHP
一些不错的js函数ajax
2008/08/20 Javascript
百度 popup.js 完美修正版非常的不错 脚本之家推荐
2009/04/17 Javascript
JavaScript的parseInt 进制问题
2009/05/07 Javascript
20个非常有用的PHP类库 加速php开发
2010/01/15 Javascript
解读JavaScript中 For, While与递归的用法
2013/05/07 Javascript
JS小功能(onmouseover实现选择月份)实例代码
2013/11/28 Javascript
再谈Jquery Ajax方法传递到action(补充)
2014/05/12 Javascript
JS自定义混合Mixin函数示例
2016/11/26 Javascript
基于JavaScript 性能优化技巧心得(分享)
2017/12/11 Javascript
Element 默认勾选表格 toggleRowSelection的实现
2019/09/04 Javascript
在elementui中Notification组件添加点击事件实例
2020/11/11 Javascript
python变量不能以数字打头详解
2016/07/06 Python
简单谈谈Python中的元祖(Tuple)和字典(Dict)
2017/04/21 Python
django定期执行任务(实例讲解)
2017/11/03 Python
Python selenium抓取微博内容的示例代码
2018/05/17 Python
Python实现在某个数组中查找一个值的算法示例
2018/06/27 Python
在python plt图表中文字大小调节的方法
2019/07/08 Python
django的ORM操作 删除和编辑实现详解
2019/07/24 Python
python3 mmh3安装及使用方法
2019/10/09 Python
树莓派4B安装Tensorflow的方法步骤
2020/07/16 Python
罗技英国官方网站:Logitech UK
2020/11/03 全球购物
.NET概念性的面试题
2012/02/29 面试题
机电一体化毕业生求职信
2013/11/02 职场文书
市政施工员自我鉴定
2014/01/15 职场文书
临床护士自荐信
2014/01/31 职场文书
家长对老师的评语
2014/04/18 职场文书
缅怀革命先烈演讲稿
2014/05/14 职场文书
大学生安全责任书
2014/07/25 职场文书
2014年组织部工作总结
2014/11/14 职场文书
教你快速构建一个基于nginx的web集群项目
2021/11/27 Servers
Python实现GIF动图以及视频卡通化详解
2021/12/06 Python
MySQL的存储过程和相关函数
2022/04/26 MySQL