由于此商品库存有限,请在下单后15分钟之内支付完成,手慢无哦!
100%刮中券,最高50元无敌券,券有效期7天
活动自2017年6月2日上线,敬请关注云钻刮券活动规则更新。
如活动受政府机关指令需要停止举办的,或活动遭受严重网络攻击需暂停举办的,或者系统故障导致的其它意外问题,苏宁无需为此承担赔偿或者进行补偿。
正版 PHP MVC开发实战 李开涌编著 机械工业出版社 9787111428527
¥ ×1
前言
基 础 篇
第1章 开发前准备 2
1.1 PHP与MVC概述 3
1.2 开发环境搭建 7
1.2.1 在Windows下使用一键安装包 8
1.2.2 在Linux平台安装LNMP 11
1.3 开发工具介绍 20
1.3.1 PHP Coder 20
1.3.2 PHP Editor 21
1.3.3 NetBeans IDE 21
1.3.4 Eclipse PDT 22
1.3.5 Zend Studio 24
1.3.6 Adobe Dreamweaver 25
1.3.7 VS.PHP 27
1.4 SVN版本控制 28
1.4.1 SVN介绍 28
1.4.2 SVN的安装 29
1.4.3 TortoiseSVN的简单使用 32
1.4.4 TortoiseSVN文件管理 35
1.4.5 SVN版本库权限配置 38
1.5 小结 40
第2章 面向对象基础 41
2.1 面向对象介绍 42
2.2 PHP面向对象基础 43
2.2.1 class关键字 43
2.2.2 类中的成员 44
2.2.3 实例化类 46
2.3 类中的方法 47
2.3.1 方法的参数 47
2.3.2 方法的返回值 48
2.3.3 访问修饰符 49
2.3.4 $this关键字 50
2.4 类的继承 50
2.4.1 子类继承父类 51
2.4.2 重写父类中的成员属性 52
2.4.3 final关键字 53
2.5 静态类成员 54
2.5.1 static关键字 54
2.5.2 访问静态类成员(self::parent::) 55
2.5.3 类常量 57
2.6 小结 58
第3章 类的高级特性 59
3.1 类对象的克隆(clone) 60
3.2 类接口(interface) 60
3.2.1 接口的意义 60
3.2.2 定义接口 61
3.2.3 实现接口(implements) 62
3.3 抽象类与抽象方法 64
3.3.1 理解抽象概念 65
3.3.2 定义抽象类和方法(abstract) 65
3.3.3 使用抽象类 66
3.3.4 接口与抽象类的区别 67
3.4 类的异常 68
3.4.1 Exception类 68
3.4.2 使用try、catch、throw语句 69
3.5 小结 70
实 战 篇
第4章 PHP MVC发展状况 72
4.1 出身豪门的Zend Framework 73
4.1.1 Zend Framework简介 73
4.1.2 安装Zend Framework 73
4.1.3 使用Zend Framework实现MVC 75
4.1.4 Zend Framework核心组件 76
4.2 功能强大的Symfony 80
4.2.1 Symfony简介 80
4.2.2 获得Symfony 81
4.2.3 实现一个简单的MVC 82
4.2.4 Symfony的配置文件 85
4.3 灵活完善的CakePHP 85
4.3.1 CakePHP简介 85
4.3.2 下载安装CakePHP 86
4.3.3 使用CakePHP构建MVC编程 86
4.3.4 好用的CakePHP视图助手 89
4.4 使用广泛的CodeIgniter 89
4.4.1 CodeIgniter简介 89
4.4.2 安装CodeIgniter 90
4.4.3 使用CodeIgniter实现MVC 91
4.5 高效便捷的ThinkPHP 94
4.5.1 ThinkPHP介绍 94
4.5.2 下载安装ThinkPHP 95
4.5.3 使用ThinkPHP实现MVC 96
4.5.4 高效的ThinkPHP视图引擎 98
4.6 小结 100
第5章 ThinkPHP开发入门 101
5.1 大道至简、开发由我 102
5.1.1 入口文件 102
5.1.2 两种创建项目的方式 103
5.1.3 模块分组 104
5.2 ThinkPHP目录 106
5.2.1 系统目录 106
5.2.2 项目目录 110
5.3 配置文件 111
5.3.1 选项配置 111
5.3.2 静态缓存配置 113
5.3.3 路由配置 115
5.4 小结 115
第6章 ThinkPHP开发MVC应用 116
6.1 ThinkPHP中的URL 117
6.1.1 URL模式 117
6.1.2 URL路由 119
6.1.3 自动生成匹配的URL 121
6.1.4 实现文件伪静态 122
6.2 模型(Model) 123
6.2.1 创建模型 123
6.2.2 实例化模型 124
6.2.3 模型初始化(_initialize()) 125
6.3 控制器(Controller) 126
6.3.1 创建控制器 126
6.3.2 控制器中的动作(Action) 126
6.3.3 控制器的调用 128
6.3.4 项目空控制器与控制器空动作 129
6.3.5 动作的前后操作 131
6.4 视图(View) 132
6.4.1 创建和使用视图 132
6.4.2 系统变量与常量 133
6.4.3 在视图中使用函数 134
6.4.4 数据循环 135
6.4.5 条件判断 138
6.4.6 使用外部文件 141
6.4.7 导入标签库 142
6.4.8 使用布局 145
6.5 小结 147
第7章 ThinkPHP的数据库操作 148
7.1 定义数据表模型 149
7.1.1 模型映射 149
7.1.2 自定义模型 149
7.1.3 create方法 151
7.1.4 模型属性 154
7.2 基础模型(Model) 158
7.2.1 连贯操作 159
7.2.2 CURD 159
7.2.3 查询语言 163
7.2.4 使用原生的SQL语言 166
7.3 关联模型(RelationModel) 167
7.3.1 关联关系 167
7.3.2 关联定义 168
7.3.3 关联模型的CURD 169
7.4 高级模型(AdvModel) 174
7.4.1 定位查询 174
7.4.2 动态查询 175
7.4.3 内容存文本 176
7.5 大数据支持 176
7.5.1 分布式数据库 177
7.5.2 读写分离 179
7.5.3 数据表分区 183
7.6 小结 187
第8章 安全与调试 188
8.1 构建稳健及安全的MVC 189
8.2 ThinkPHP内置的安全机制 189
8.2.1 表单令牌 189
8.2.2 字段检测 190
8.2.3 数据验证 193
8.2.4 数据验证码 197
8.3 ThinkPHP安全日志机制 201
8.3.1 记录方式 201
8.3.2 系统日志 202
8.3.3 应用日志 202
8.4 使用消息队列机制 204
8.4.1 HTTPSQS基础 204
8.4.2 安装HTTPSQS 205
8.4.3 测试HTTPSQS 207
8.4.4 在MVC中使用HTTPSQS 209
8.5 ThinkPHP程序调试机制 212
8.5.1 开启调试功能 212
8.5.2 代码编译概念 214
8.5.3 异常定制 215
8.5.4 性能调试 216
8.6 小结 218
第9章 ThinkPHP功能库 220
9.1 数据处理 221
9.1.1 XML引擎 221
9.1.2 返回XML 228
9.1.3 返回Json 232
9.1.4 使用Json及Jsonp 235
9.2 ThinkPHP函数库 241
9.2.1 快捷方法 241
9.2.2 基础函数库 242
9.2.3 扩展函数库 245
9.3 ThinkPHP多语言支持 248
9.3.1 部署多语言 248
9.3.2 实现多语言 249
9.3.3 多语言与客户端 250
9.4 客户端 252
9.4.1 封装的Session 252
9.4.2 封装的Cookie 256
9.5 小结 257
第10章 网站静态化 259
10.1 Cache类 260
10.1.1 缓存的方式 260
10.1.2 开启缓存 260
10.1.3 安装Memcached 261
10.1.4 使用Memcached 265
10.2 Memcached实战应用 267
10.2.1 页面局部缓存 267
10.2.2 缓存数据集 267
10.2.3 使用Memcache存放Session 270
10.3 使用Redis缓存 274
10.3.1 Redis的安装 274
10.3.2 安装Redis扩展 277
10.3.3 测试Redis 279
10.3.4 Redis缓存 279
10.4 静态缓存 282
10.4.1 静态缓存配置 282
10.4.2 静态缓存规则 283
10.5 小结 286
第11章 ThinkPHP扩展 287
11.1 使用扩展 288
11.1.1 扩展的分类 288
11.1.2 模板引擎扩展 291
11.2 网络操作 293
11.2.1 文件上传 293
11.2.2 Nginx文件上传进度 295
11.2.3 FTP文件上传 304
11.2.4 下载文件 305
11.2.5 Socket套接字编程 306
11.2.6 定位当前位置 308
11.2.7 发送电子邮件 309
11.3 数据处理 311
11.3.1 数据加密 311
11.3.2 数据编码转换 313
11.3.3 数据分页 314
11.3.4 日期数据 315
11.3.5 Input类 317
11.3.6 GD库绘制图形 318
11.4 行为扩展 320
11.4.1 行为概述 320
11.4.2 内置行为扩展 322
11.4.3 自定义行为扩展 323
11.5 小结 325
第12章 SOAP分布式开发 326
12.1 分布式开发概念 327
12.1.1 SOA与SOAP 327
12.1.2 PHP 5分布式开发 329
12.2 SOAP消息体 331
12.2.1 WSDL文件 331
12.2.2 定义根消息体definitions 335
12.2.3 type类型 335
12.2.4 portType端口类型 336
12.2.5 message消息列表 337
12.2.6 binding服务绑定描述 337
12.2.7 service服务描述 338
12.2.8 可视化创建WSDL 338
12.2.9 使用nusoap创建WSDL 341
12.2.10 ThinkPHP生成SOAP服务 343
12.3 使用soapUI测试WSDL 347
12.3.1 soapUI简介 347
12.3.2 安装soapUI 348
12.3.3 创建项目 349
12.3.4 测试项目 350
12.3.5 负载测试 351
12.4 小结 353
第13章 整合Smarty模板引擎 354
13.1 Smarty模板引擎介绍 355
13.2 使用Smarty 356
13.2.1 在PHP中使用Smarty 356
13.2.2 开启ThinkPHP模板扩展 358
13.2.3 以扩展的方式使用全功能Smarty 358
13.3 Smarty模板函数和标签 360
13.3.1 include(包含文件) 361
13.3.2 capture(暂存数据) 361
13.3.3 include_php(包含PHP文件) 362
13.3.4 insert(插入函数) 362
13.3.5 literal(原文本输出) 363
13.3.6 php(执行PHP语句块) 363
13.3.7 strip(保留空格和回车符) 364
13.4 Smarty模板控制语句 364
13.4.1 if、elseif(判断语句) 364
13.4.2 foreach(循环数据) 365
13.4.3 section(遍历数组) 366
13.5 变量调节器 367
13.5.1 capitalize(首字母大写) 367
13.5.2 count_characters(统计字符) 367
13.5.3 count_paragraphs(统计段落) 367
13.5.4 count_sentences(统计句数) 368
13.5.5 count_words(统计单词) 368
13.5.6 date_format(格式化日期) 368
13.5.7 escape(字符转码) 369
13.5.8 replace(字符替换) 369
13.5.9 regex_replace(正则替换) 370
13.5.10 truncate(字符截取) 370
13.6 视图助手 370
13.6.1 html_image(生成图像) 370
13.6.2 html_options(生成表单选择组件) 371
13.6.3 html_radios(生成表单单选组件) 372
13.6.4 html_checkboxes(生成表单复选组件) 373
13.6.5 html_select_date(生成表单日期选择组件) 374
13.6.6 html_select_time(生成表单时间选择组件) 376
13.6.7 html_table(生成表格) 377
13.7 Smarty对象方法 378
13.7.1 display(显示模板) 378
13.7.2 fetch(获取输出内容) 379
13.7.3 configLoad(加载配置信息) 379
13.7.4 registerPlugin(注册插件) 380
13.8 Smarty缓存 383
13.8.1 开启缓存 383
13.8.2 局部缓存 384
13.9 小结 386
第14章 整合Coreseek全文搜索服务 387
14.1 全文索引概述 388
14.2 Coreseek基础 389
14.2.1 Coreseek概述 389
14.2.2 在Windows下安装Coreseek 390
14.2.3 在Linux下安装Coreseek 394
14.3 Coreseek管理工具 397
14.3.1 indexer 397
14.3.2 searchd 400
14.3.3 search 402
14.4 创建索引 403
14.4.1 索引源分类 403
14.4.2 增量索引 407
14.4.3 实时索引 409
14.5 在MVC中搜索数据 412
14.5.1 安装Sphinx扩展模块 412
14.5.2 使用PHP接口 413
14.5.3 在MVC中搜索数据 414
14.5.4 实现关键词高亮显示 418
14.6 小结 420
第15章 使用MongoDB 421
15.1 MongoDB介绍 422
15.2 MongoDB的安装 424
15.2.1 在Windows下安装MongoDB 424
15.2.2 在Linux下安装MongoDB 426
15.3 MongoDB的使用 428
15.3.1 理解MongoDB的数据结构 428
15.3.2 数据库管理 429
15.3.3 文档数据类型 430
15.3.4 插入数据 432
15.3.5 查询数据 433
15.3.6 更新数据 436
15.3.7 删除数据 436
15.4 条件操作 437
15.4.1 条件判断语句 437
15.4.2 $all匹配全部 438
15.4.3 $exists 检查字段 438
15.4.4 null 空值处理 439
15.4.5 $ne比较 439
15.4.6 $mod 取模运算 440
15.4.7 $in、nin枚举查询 440
15.4.8 $or、$nor判断查询 441
15.4.9 $type映射查询 442
15.4.10 使用正则表达式匹配 442
15.4.11 limit、skip 限制查询 443
15.4.12 count 查询记录条数 444
15.4.13 sort 查询结果排序 444
15.5 性能优化 445
15.5.1 使用索引 445
15.5.2 固定集合 448
15.5.3 GridFS 450
15.5.4 Profile优化器 450
15.6 在MVC中使用MongoDB 451
15.6.1 安装PHP扩展 451
15.6.2 开启MongoDB用户验证 453
15.6.3 ThinkPHP操作MongoDB 455
15.7 小结 459
第16章 Redis实战 460
16.1 Redis的使用 461
16.1.1 Redis概述 461
16.1.2 常用管理命令 462
16.1.3 Redis用户验证 464
16.2 Redis数据类型 465
16.2.1 String类型 465
16.2.2 Hash类型 467
16.2.3 List类型 469
16.2.4 Sets类型 473
16.2.5 Zset类型 477
16.2.6 使用phpRedisAdmin 480
16.3 Redis高级使用 483
16.3.1 数据持久化 483
16.3.2 虚拟内存 484
16.3.3 事务处理 484
16.3.4 主从同步 486
16.4 在MVC中使用Redis 487
16.4.1 在PHP中使用Redis 487
16.4.2 在MVC中进行CURD操作 491
16.4.3 数据分页 496
16.5 小结 498
项 目 篇
第17章 开发论坛系统 500
17.1 开发前准备 501
17.1.1 系统介绍 501
17.1.2 系统预览 501
17.1.3 架构设计 505
17.1.4 系统部署 511
17.2 系统整体界面设计 513
17.2.1 布局方案 514
17.2.2 论坛首页 516
17.2.3 论坛版块 519
17.3 用户模块 524
17.3.1 用户登录 524
17.3.2 用户注册 528
17.3.3 使用微博账号登录 532
17.3.4 将现有账号绑定到微博 535
17.4 发表帖子模块 537
17.4.1 整合百度编辑器 537
17.4.2 上传图片 540
17.4.3 管理图片 542
17.4.4 上传附件 543
17.4.5 数据提交处理 544
17.5 帖子内容模块 545
17.5.1 帖子正文 545
17.5.2 回复列表 547
17.5.3 回复帖子 550
17.6 帖子管理模块 551
17.6.1 删除帖子 551
17.6.2 锁定帖子 553
17.6.3 置顶帖子 554
17.6.4 推荐帖子 554
17.7 行为拦截器 555
17.7.1 统计浏览量 555
17.7.2 登记浏览位置 556
17.8 帖子搜索模块 557
17.8.1 标题搜索 557
17.8.2 使用全文搜索 558
17.9 小结 562
第18章 开发自己的MVC框架 563
18.1 开发前准备 564
18.1.1 开发MVC框架的思路 564
18.1.2 文件结构 564
18.2 核心类库 565
18.2.1 初始化 565
18.2.2 URL处理 566
18.3 控制器的开发 567
18.3.1 类自动载入 568
18.3.2 加载模板引擎(View) 569
18.3.3 处理消息(message) 569
18.4 模型的开发 572
18.4.1 使用PDO 572
18.4.2 模型实例化 573
18.4.3 实现连贯操作 573
18.4.4 读取数据 574
18.4.5 插入数据 576
18.4.6 更新数据 577
18.4.7 删除数据 578
18.5 扩展类库 582
18.5.1 Session驱动扩展 583
18.5.2 缓存驱动扩展 586
18.6 测试MVC框架 588
18.6.1 创建项目 589
18.6.2 测试CURD 590
18.6.3 测试驱动 594
18.7 小结 595
附录 596
附录A 让Nginx支持Pathinfo模式 596
附录B 配置团队开发环境 597
李开涌,IT作家,技术顾问。 曾供职于电信盈科,主要从事分布式集成系统的开发。拥有超过8年的开源技术编程经验,对Linux、FreeBSD以及Hadoop集群等均有丰富的使用及开发经验。同时,还是微软SilverlightMVP,精通微软的.NET平台技术,是国内最早从事windowsPhone技术普及的IT作者,曾著有《windowsPhone7应用开发入门与实践》一书。目前从事分布式开发及云技术研究。
MVC是一种优选的开发模式,能够解决团队开发之间协同配合的问题,使得网站各部件以更高的效率运行。MVC模式将网站分为3大部件,分别为模型、视图、控制器。这3大部件各自分离,但又相互依存,很终形成了一个容易维护、容易扩展、高效运行的网站平台。对于后台程序员,借助于MVC模式就可以更加专注于功能的实现,而不需要太多地涉及页面与前端。这种分工协作的很终目的是提高开发效率及项目质量。对于个人项目,也许在其他编程技术(例如Java、Python)中,MVC模式并没有优势,但在PHP中,由于支持混合编程,所以使用MVC模式进行编程,能显著提高工作效率。
本书是靠前靠前本专门介绍PHP MVC开发模式的图书,全书围绕MVC实现思路进行细致的讲解。通过MVC编程模式,以点带面,全面深入探讨PHP核心技术。同时,本书也是一本深入介绍利用PHP构建高性能网站的图书,通过MVC的数据库中间件,可以轻松实现网站群体、读写分离等不错应用,本书在此基础上还会进一步介绍当前流行的NoSQL应用、全文搜索应用等。很后,作者通过一个自行编写的MVC框架,引导读者开发属于自己的PHP MVC框架。
本书内容通俗易懂、示例形象,适合广大的Web从业人员阅读。由于PHP很好简单、易用,所以就算是未接触过PHP的读者或者初学者,只要掌握了基础的面向对象编程思想就可以轻松上手。
李开涌等编著的《PHPMVC开发实战》是国内第一本专门介绍PHPMVC开发模式的图书,全书围绕MVC实现思路进行细致的讲解。本书共分为3大部分,分别为基础篇、实战篇、项目篇。在内容组织上尽量以循序渐进的方式深入地讲解每个知识要领。初级的PHP程序员在阅读本书内容时,由于引用示例形象不会感觉生搬硬套、敷衍应付;高级的PHP程序员在阅读本书内容时,也会感受到作者清晰的实现思路,从中获益。
亲,大宗购物请点击企业用户渠道>小苏的服务会更贴心!
亲,很抱歉,您购买的宝贝销售异常火爆让小苏措手不及,请稍后再试~
非常抱歉,您前期未参加预订活动,
无法支付尾款哦!
抱歉,您暂无任性付资格