# 2.1 Symfony 3
按照Symfony官方站点的[列表](http://symfony.com/components),SF3提供了如下构件:
* Asset: 管理URL的生成以及WEB部件(CSS,JS,图片)的版本控制。
* BrowserKit:模拟一个WEB浏览器的行为。
* ClassLoader:只要你项目中的类符合PHP标准约定可以将其自动调入。
* Config:对配置值的操作
* Console:简化优美且可测试的命令行界面的创建。
* CssSelector:将CSS选择子转化到XPath表达式。
* Debug:提供简化PHP代码调试的工具。
* DependencyInjection: 允许用户标准化并集约化应用中对象创建的方式。
* DomCrawler:简化HTML和XML文档的DOM导航。
* EventDispatcher:实现了Mediator模式。
* ExpressionLanguage:提供引擎来编译并估值一个表达式。
* FileSystem:提供文件系统的基本操作。
* Finder:提供一个直观流畅的界面来找到文件和目录。
* Form:创建、处理、复用HTML表单的工具。
* Guard:整合多重认证层。
* HttpFoundation:定义了HTTP规范的面向对象的层。
* HttpKernel:为创建可扩展和快速的基于HTTP的框架提供了基础。
* Icu:该部件于2014年10月后失效,请改用Intl。
* Intl:如果intl扩展没有安装,则提供了一个候选库。
* Ldap:基于PHP的LDAP扩展,提供了一个LDAP客户端。
* Locale:该部件于SF2.3后失效,请改用Intl。
* OptionResolver:帮助用户以选项数组来配置对象。
* Process:在子进程中执行命令。
* PropertyAccess:用一个简化的字符串形式从对象、数组中读取数据或者写入数据。
* PropertyInfo:提取PHP类的属性。
* Routing:将HTTP请求映射到一系列配置变量。
* Security:为复杂授权系统提供基础。
* Serializer:将对象转换成一个特定格式(XML,JSON,YAML等)或者反之。
* Stopwatch:提供代码调式的方式。
* Templating:提供创建任意模板系统需要的工具。
* Translation:为应用的国际化提供工具。
* Validator:用来验证一个类的工具。
* VarDumper:检视一个任意PHP变量的工具。
* Yaml:对YAML文件的操作。
需要说明的是,这些构件不是SF3能使用的构件的全部,只是SF3框架本身提供的、可被第三方单独使用的构件。SF还将借助其它第三方构件来建立起一个庞大的支撑系统,从而使开发者能在一个开放、统一的平台上进行编程。
需要了解这些构件具体的功能和用法的话,可以参考SF官方文档。
- 引言
- 1 LAMP
- 1.1 安装虚拟机
- 1.2 安装Vagrant
- 1.3 安装Ubuntu
- 1.4 安装Apache 2
- 1.5 安装PHP
- 1.6 安装MySQL服务器
- 1.7 最后的微调
- 1.8 设置一个虚拟主机
- 1.9 一个趁手的IDE
- 2 Symfony 3和重要构件
- 2.1 Symfony 3
- 2.2 Doctrine
- 2.3 Twig
- 2.4 Composer
- 3 Symfony重要概念
- 3.1 MVC
- 3.2 Bundle/包
- 3.3 Route/路由
- 3.4 Controller/控制器
- 3.5 Entity/实体
- 3.6 Repository/仓库
- 3.7 Template/模板
- 3.8 Test/测试
- 4 藏书管理程序的结构
- 5 创建应用
- 5.1 建立版本管理
- 5.2 建立数据库
- 5.3 应用结构
- 5.4 建立数据库实体
- 5.5 样本数据
- 5.6 路由
- 5.7 模板
- 5.8 开始编写首页
- 5.9 书籍详情页面
- 5.10 书籍列表页面
- 5.11 书籍搜索
- 6 用户和后台
- 7 结语