图书介绍
symfony权威指南PDF|Epub|txt|kindle电子书版本网盘下载
- (法)扎尼诺托等著;江乐等译 著
- 出版社: 北京:电子工业出版社
- ISBN:9787121067495
- 出版时间:2008
- 标注页数:358页
- 文件大小:90MB
- 文件页数:377页
- 主题词:企业管理-应用软件,symfony
PDF下载
下载说明
symfony权威指南PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1篇 基础知识2
第1章 symfony介绍2
1.1 symfony简介2
1.1.1 symfony的功能2
1.1.2 谁开发了symfony?为什么要开发symfony3
1.1.3 symfony社区4
1.1.4 symfony适合我吗4
1.2 基本概念5
1.2.1 PHP55
1.2.2 面向对象程序设计(OOP)5
1.2.3 魔术方法(Magic Methods)5
1.2.4 PHP扩展与应用程序库(PEAR)6
1.2.5 对象关系映射(ORM)6
1.2.6 快速应用程序开发(RAD)7
1.2.7 YAML8
1.3 总结9
第2章 探索symfony代码10
2.1 MVC模式10
2.1.1 MVC层次11
2.1.2 MVC以外的层分离方式14
2.1.3 symfony的MVC实现方式17
2.1.4 symfony核心类19
2.2 代码组织20
2.2.1 项目结构:应用程序、模块与动作20
2.2.2 目录结构21
2.3 常用工具24
2.3.1 参数存储器(Parameter Holoder)24
2.3.2 常量(Contant)25
2.3.3 类自动载入(Class Autoloading)26
2.4 总结26
第3章 运行symfony28
3.1 安装沙盒(Sandbox)28
3.2 安装symfny库29
3.2.1 PEAR方式安装symfony30
3.2.2 从SVN库中获得symfony31
3.3 配置一个程序31
3.3.1 建立一个项目31
3.3.2 建立一个应用程序32
3.4 配置Web服务器33
3.4.1 设置虚拟主机33
3.4.2 配置一个共享服务器34
3.5 安装问题35
3.5.1 常见问题35
3.5.2 symfony资源36
3.6 源代码版本控制36
3.7 总结38
第4章 页面创建基础39
4.1 建立模块框架39
4.2 增加一个页面41
4.2.1 增加一个动作41
4.2.2 增加一个模板42
4.2.3 从动作传递信息给模板43
4.3 通过表单从用户获取数据43
4.4 链接到另一个动作45
4.5 从请求中取得信息46
4.6 总结47
第5章 配置symfony48
5.1 配置系统48
5.1.1 YAML语法与symfony惯例49
5.1.2 救命,YAML文件把我的程序搞死了51
5.2 配置文件概述52
5.2.1 项目配置52
5.2.2 应用程序配置53
5.2.3 模块配置55
5.3 环境56
5.3.1 什么是环境56
5.3.2 配置层叠58
5.4 配置缓存59
5.5 从代码里访问配置信息60
5.5.1 sfConfig类60
5.5.2 自定义应用程序配置与app.yml62
5.6 使用配置文件的技巧62
5.6.1 在YAML文件里使用常量62
5.6.2 在配置文件里使用脚本63
5.6.3 浏览你的YAML文件63
5.7 总结64
第2篇 核心架构66
第6章 深入了解控制器层66
6.1 前端控制器66
6.1.1 前端控制器的工作细节66
6.1.2 默认的前端控制器67
6.1.3 调用其他的前端控制器来切换环境67
6.1.4 批处理文件68
6.2 动作(Action)69
6.2.1 动作类69
6.2.2 另一种动作类语法70
6.2.3 从动作里获取信息70
6.2.4 动作结束71
6.2.5 跳到另一个动作73
6.2.6 几个动作共享的代码74
6.3 访问请求75
6.4 用户会话77
6.4.1 访问用户会话77
6.4.2 Flash属性78
6.4.3 会话管理79
6.5 动作安全80
6.5.1 访问限制80
6.5.2 访问授权81
6.5.3 复合证书83
6.6 检验和处理错误的方法83
6.7 过滤器85
6.7.1 过滤器链85
6.7.2 建立自己的过滤器87
6.7.3 过滤器激活和参数88
6.7.4 过滤器实例89
6.8 模块配置90
6.9 总结90
第7章 深入了解视图层91
7.1 模板91
7.1.1 辅助函数(Helpers)92
7.1.2 页面布局94
7.1.3 模板快捷变量96
7.2 代码片段(Code Fragments)96
7.2.1 局部模板(Partial)97
7.2.2 组件(Component)98
7.2.3 槽(Slot)100
7.3 视图配置102
7.3.1 view.yml文件103
7.3.2 响应对象104
7.3.3 视图配置105
7.4 组件槽(Component Slot)109
7.5 输出转义(Output Escaping)111
7.5.1 开启输出转义111
7.5.2 转义策略112
7.5.3 转义辅助函数113
7.5.4 转义数组与对象113
7.6 总结114
第8章 深入了解模型层115
8.1 为什么使用ORM和抽象层115
8.2 symfony的数据库设计(schema)116
8.2.1 设计示例117
8.2.2 基本设计语法117
8.3 模型类118
8.3.1 基础类和自定义类119
8.3.2 对象和Peer类119
8.4 访问数据120
8.4.1 获得列值120
8.4.2 获得相关联的数据121
8.4.3 保存和删除数据122
8.4.4 通过主键来获得记录122
8.4.5 通过Criteria获得数据123
8.4.6 直接使用SQL查询语句125
8.4.7 使用特殊日期列126
8.5 数据库连接127
8.6 扩展模型128
8.6.1 增加新的方法128
8.6.2 覆盖现有方法129
8.6.3 使用模型行为130
8.7 扩展设计(schema)语法130
8.7.1 属性130
8.7.2 列的详细资料132
8.7.3 外键133
8.7.4 索引133
8.7.5 空列134
8.7.6 il8n表134
8.7.7 超越schema.yml:schema.xml135
8.8 不要重复建立模型136
8.8.1 基于已有的设计建立一个SQL数据库结构136
8.8.2 基于已有数据库建立YAML数据模型137
8.9 总结138
第3篇 特殊功能140
第9章 链接和路由系统140
9.1 什么是路由140
9.1.1 URL是服务器指令140
9.1.2 URL是界面的一部分141
9.1.3 URL如何工作142
9.2 URL重写144
9.3 链接辅助函数145
9.3.1 超链接、按钮和表单145
9.3.2 链接辅助函数的可选参数146
9.3.3 伪装的GET和POST选项147
9.3.4 把请求参数强制设置为GET变量148
9.3.5 使用绝对路径149
9.4 路由配置150
9.4.1 规则和模式150
9.4.2 模式限制151
9.4.3 设置默认值153
9.4.4 用规则名字来加快路由速度153
9.4.5 增加.html扩展名154
9.4.6 不使用routing.yml创建规则155
9.5 在动作中处理路由155
9.6 总结156
第10章 表单157
10.1 表单辅助函数157
10.1.1 主要的表单标签157
10.1.2 标准的表单元素158
10.1.3 日期输入控件161
10.1.4 编辑富文本(rich text)162
10.1.5 选择国家和语言163
10.2 对象的表单辅助函数164
10.2.1 生成对象的下拉列表165
10.2.2 创建一个基于外键列的下拉列表165
10.2.3 更新对象167
10.3 表单验证167
10.3.1 验证器168
10.3.2 验证文件169
10.3.3 重新显示表单170
10.3.4 在表单中显示出错信息171
10.3.5 重新填充表单数据172
10.3.6 标准symfony验证器173
10.3.7 具名验证器(Named Validator)176
10.3.8 重新指定验证方法177
10.3.9 验证文件到底是什么样子177
10.4 复杂的验证178
10.4.1 创建一个定制的验证器178
10.4.2 用数组表示表单域180
10.4.3 验证空域180
10.5 总结181
第11章 集成Ajax182
11.1 基本的JavaScript辅助函数182
11.1.1 模板中的JavaScript183
11.1.2 更新一个DOM元素184
11.1.3 轻松地降级(Graceful Degradation)185
11.2 Prototype185
11.3 Ajax辅助函数186
11.3.1 Ajax链接188
11.3.2 Ajax驱动的表单188
11.3.3 周期性调用远程函数191
11.4 远程调用参数191
11.4.1 根据响应状态更新不同的元素191
11.4.2 根据位置更新元素192
11.4.3 根据条件更新元素192
11.4.4 确定Ajax请求方法193
11.4.5 授权脚本运行193
11.4.6 创建回调函数193
11.5 创建视觉效果194
11.6 JSON195
11.7 用Ajax完成复杂的交互197
11.7.1 自动完成197
11.7.2 拖放198
11.7.3 可排序列表199
11.7.4 就地编辑200
11.8 总结201
第12章 缓存202
12.1 缓存响应202
12.1.1 全局缓存设置202
12.1.2 缓存一个动作203
12.1.3 缓存一个局部模板、组件或者组件槽204
12.1.4 缓存模板片段205
12.1.5 动态配置缓存207
12.1.6 使用极速缓存(Super Fast Cache)208
12.2 从缓存里删除项目209
12.2.1 删除整个缓存209
12.2.2 清除指定的缓存210
12.2.3 缓存目录结构212
12.2.4 手工清除缓存212
12.3 缓存测试与监测213
12.3.1 建立一个临时工作环境213
12.3.2 监测性能214
12.3.3 基准化分析(Benchmarking)214
12.3.4 识别缓存的部分214
12.4 HTTP 1.1与客户端缓存215
12.4.1 增加ETag头信息来避免发送重复的内容215
12.4.2 增加Last-Modified头信息避免发送仍然有效的内容215
12.4.3 通过增加Vary头信息来保存一个页面的多个缓存版本216
12.4.4 通过增加Cache-Control头信息来允许客户端缓存216
12.5 总结217
第13章 国际化(i18n)与本地化(l10n)218
13.1 用户的国家和语言(User Culture)218
13.1.1 设置默认的国家和语言218
13.1.2 改变用户的国家和语言219
13.1.3 自动确定用户的国家和语言220
13.2 标准与格式220
13.2.1 根据用户culture值输出数据220
13.2.2 从本地化输入获取数据221
13.3 数据库中的文本信息222
13.3.1 创建本地化数据库设计(schema)222
13.3.2 运用生成的i18n对象223
13.4 界面翻译224
13.4.1 翻译的配置224
13.4.2 运用翻译辅助函数224
13.4.3 运用字典文件225
13.4.4 管理字典226
13.4.5 处理其他需要翻译的元素226
13.4.6 处理复杂的翻译需求227
13.4.7 在模板外调用翻译辅助函数228
13.5 总结228
第4篇 开发工具230
第14章 生成器(Generator)230
14.1 基于模型生成代码230
14.1.1 脚手架与管理界面230
14.1.2 初始化或生成代码231
14.1.3 数据模型示例231
14.2 脚手架232
14.2.1 生成脚手架232
14.2.2 初始化脚手架234
14.3 管理界面234
14.3.1 初始化管理界面模块235
14.3.2 初探生成的代码236
14.3.3 generator.yml配置文件236
14.4 配置生成器238
14.4.1 字段238
14.4.2 视图定制243
14.4.3 List视图相关的定制245
14.4.4 edit视图相关的定制249
14.4.5 处理外键252
14.4.6 增加交互253
14.4.7 表单验证255
14.4.8 使用证书限制用户动作256
14.5 修改生成模块的外观256
14.5.1 使用自定义样式表256
14.5.2 增加自定义头部与尾部257
14.5.3 自定义主题258
14.6 总结259
第15章 单元测试和功能测试260
15.1 自动化测试260
15.1.1 单元测试和功能测试260
15.1.2 测试驱动的开发方法261
15.1.3 Lime测试框架262
15.2 单元测试262
15.2.1 单元测试概述262
15.2.2 单元测试方法263
15.2.3 测试参数265
15.2.4 测试单元任务266
15.2.5 测试桩(Stub)、测试资源(Fixture)和自动加载267
15.3 功能测试269
15.3.1 功能测试概要269
15.3.2 用sfTestBrowser对象浏览271
15.3.3 运用断言273
15.3.4 运用CSS选择器275
15.3.5 在测试环境中工作276
15.3.6 功能测试任务277
15.4 为测试命名278
15.5 特别的测试需求279
15.5.1 在测试框架(Test Harness)中进行测试279
15.5.2 存取数据库280
15.5.3 测试缓存280
15.5.4 测试客户端交互281
15.6 总结283
第16章 应用程序管理工具284
16.1 日志284
16.1.1 PHP日志284
16.1.2 symfony日志285
16.2 调试287
16.2.1 symfony调试模式287
16.2.2 symfony异常288
16.2.3 Xdebug扩展289
16.2.4 网页调试工具条290
16.2.5 手动调试293
16.3 填充数据库295
16.3.1 fixture文件格式295
16.3.2 导入数据295
16.3.3 使用关联表296
16.4 部署应用程序297
16.4.1 为FTP传输冻结项目297
16.4.2 使用rsync进行增量文件传输297
16.4.3 忽略无关文件299
16.4.4 管理投入使用的应用程序300
16.5 总结301
第17章 扩展symfony302
17.1 Mixins302
17.1.1 理解多重继承302
17.1.2 Mixing类303
17.1.3 声明一个类是可扩展的304
17.1.4 注册扩展(Extension)306
17.1.5 更精确的扩展308
17.2 factory309
17.3 桥接其他框架组件310
17.4 插件312
17.4.1 查找symfony插件312
17.4.2 安装插件313
17.4.3 解读插件315
17.4.4 如何写一个插件318
17.5 总结324
第5篇 成为symfony专家326
第18章 性能326
18.1 调整服务器326
18.2 调整模型327
18.2.1 优化Propel整合327
18.2.2 限制化合(Hydrate)对象数量328
18.2.3 用Join让结果数量最小化328
18.2.4 避免使用临时数组330
18.2.5 绕过ORM331
18.2.6 数据库加速332
18.3 调整视图334
18.3.1 使用最快的代码片段334
18.3.2 加速路由过程334
18.3.3 略过模板335
18.3.4 限制默认的辅助函数335
18.3.5 压缩响应335
18.4 调整缓存336
18.4.1 选择性地清除部分缓存336
18.4.2 生成缓存页337
18.4.3 使用数据库存储系统进行缓存338
18.4.4 绕过symfony338
18.4.5 缓存函数调用的结果338
18.4.6 在服务器上缓存数据339
18.5 屏蔽未使用过的功能340
18.6 优化你的代码341
18.6.1 核心编译341
18.6.2 sfOptimizer插件342
18.7 总结342
第19章 管理symfony配置文件343
19.1 symfony配置参数343
19.1.1 默认的模块和动作343
19.1.2 激活可选特性345
19.1.3 功能特性配置346
19.2 扩展自动载入功能348
19.3 定制文件结构350
19.3.1 基本的文件结构351
19.3.2 定制文件结构352
19.3.3 修改项目的Web根目录352
19.3.4 连接symfony库353
19.4 理解配置处理器354
19.4.1 默认的配置处理器354
19.4.2 加入你自己的处理器355
19.5 控制PHP参数357
19.6 总结358