您好,欢迎来到聚文网。
登录
免费注册
网站首页
|
搜索
热搜:
磁力片
|
漫画
|
购物车
0
我的订单
商品分类
首页
幼儿
文学
社科
教辅
生活
销量榜
PHP核心技术与最佳实践 第2版
装帧: 平装
出版社: 机械工业出版社
作者: 列旭松,陈文
出版日期: 2018-09-01
商品条码: 9787111608417
版次: 2
开本: 16开
页数: 581
出版年份: 2018
定价:
¥129
销售价:
登录后查看价格
¥{{selectedSku?.salePrice}}
库存:
{{selectedSku?.stock}}
库存充足
{{item.title}}:
{{its.name}}
加入购物车
立即购买
加入书单
收藏
精选
¥5.83
世界图书名著昆虫记绿野仙踪木偶奇遇记儿童书籍彩图注音版
¥5.39
正版世界名著文学小说名家名译中学生课外阅读书籍图书批发 70册
¥8.58
简笔画10000例加厚版2-6岁幼儿童涂色本涂鸦本绘画本填色书正版
¥5.83
世界文学名著全49册中小学生青少年课外书籍文学小说批发正版
¥4.95
全优冲刺100分测试卷一二三四五六年级上下册语文数学英语模拟卷
¥8.69
父与子彩图注音完整版小学生图书批发儿童课外阅读书籍正版1册
¥24.2
好玩的洞洞拉拉书0-3岁宝宝早教益智游戏书机关立体翻翻书4册
¥7.15
幼儿认字识字大王3000字幼儿园中班大班学前班宝宝早教启蒙书
¥11.55
用思维导图读懂儿童心理学培养情绪管理与性格培养故事指导书
¥19.8
少年读漫画鬼谷子全6册在漫画中学国学小学生课外阅读书籍正版
¥64
科学真好玩
¥12.7
一年级下4册·读读童谣和儿歌
¥38.4
原生态新生代(传统木版年画的当代传承国际研讨会论文集)
¥11.14
法国经典中篇小说
¥11.32
上海的狐步舞--穆时英(中国现代文学馆馆藏初版本经典)
¥21.56
猫的摇篮(精)
¥30.72
幼儿园特色课程实施方案/幼儿园生命成长启蒙教育课程丛书
¥24.94
旧时风物(精)
¥12.04
三希堂三帖/墨林珍赏
¥6.88
寒山子庞居士诗帖/墨林珍赏
¥6.88
苕溪帖/墨林珍赏
¥6.88
楷书王维诗卷/墨林珍赏
¥9.46
兰亭序/墨林珍赏
¥7.74
祭侄文稿/墨林珍赏
¥7.74
蜀素帖/墨林珍赏
¥12.04
真草千字文/墨林珍赏
¥114.4
进宴仪轨(精)/中国古代舞乐域外图书
¥24.94
舞蹈音乐的基础理论与应用
编辑推荐
内容简介
PHP领域认可的标杆之作,被誉为“PHP开发工程师能力进阶的推荐阅读书”,致力于为希望成为中不错PHP程序员的读者提供全面、高效的指导。本书版出版于2012年,累计印刷超过10次,6年后全新升级,一方面根据PHP技术新的发展删除和更新了一些过时的内容,另一方面对原来的部分内容作了深度优化。全书共13章,逻辑上分为5个部分:靠前部分(1~2章):从不同的角度阐述了面向对象软件设计思想的核心概念、技术和原则,分析了面向对象的特性、设计模式的理念,指出了如何设计低耦合、高可扩展性的软件,等等。第二部分(3~6章):详细讲解了PHP网络编程的原理、方法、技巧和一些重要的操作,PDO、数据库应用优化,数据库设计和MySQL的不错应用,PHP框架的实现原理。第三部分(第7章):围绕PHP扩展开发进行了细致而深入的探讨,解析了PHP的底层实现和Zend虚拟机API,并用PHP扩展开发的实例带领读者走进PHP的底层世界,旨在让读者对PHP性能优化、底层原理进行深入的理解。第四部分(8~10章):重点讨论了缓存的设计、Memcached的原理与实践、NoSQL数据库Redis源码分析与应用实践等内容。第五部分(12~13章)详细讲解了PHP代码的调试和测试、Hash算法和数据库的实现。
作者简介
陈文,资深软件工程师和PHP技术专家,有超过15年的软件开发经验。深耕于网络安全、互联网金融等领域,长期在PHP、Java、C 等技术领域的一线从事开发、架构方面的工作,擅长TCP/IP编程、多线程和并发程序设计、中间件开发、网络安全等。兴趣广泛,提倡“理论指导实践”,对软件设计思想有独到的见解,追求代码之美和高效率程序开发,爱好钻研底层技术。
列旭松,资深软件工程师和PHP技术专家,有超过10年的PHP开发经验。现就职于唯品会,担任资深工程师,曾任职于YY语音。熟识PHP、C语言和Go语言,对PHP底层实现原理有较深理解。热衷于开源事业,开源过多个PHP相关的扩展,流行的PHP源码加密扩展(PHP-Beast)作者。此外,对Redis、Memcached等分布式缓存系统有深入研究和丰富的实践经验。
目录
前言
第1章面向对象思想的核心概念1
1.1面向对象的“形”与“本”2
1.1.1对象的“形”2
1.1.2对象的“本”4
1.1.3对象与数组6
1.1.4对象与类6
1.2魔术方法的应用8
1.2.1set和get方法8
1.2.2call和callStatic方法11
1.2.3toString方法和debugInfo方法13
1.3命名空间与自动加载18
1.3.1理解命名空间18
1.3.2自动加载21
1.4继承与多态21
1.4.1类的组合与继承22
1.4.2各种语言中的多态26
1.5面向接口编程30
1.5.1接口的作用30
1.5.2对PHP接口的思考32
1.6反射35
1.6.1如何使用反射API35
1.6.2反射有什么作用37
1.7异常和错误处理39
1.7.1如何使用异常处理机制39
1.7.2怎样看PHP的异常45
1.7.3PHP中的错误级别45
1.7.4PHP中的错误处理机制47
1.7.5PHP7对异常机制的改进49
1.8本章小结53
第2章面向对象的设计原则54
2.1面向对象设计的五大原则55
2.1.1单一职责原则55
2.1.2接口隔离原则63
2.1.3开放-封闭原则66
2.1.4替换原则69
2.1.5依赖倒置原则71
2.2一个面向对象留言本的实例73
2.3面向对象的思考77
2.4本章小结78
第3章PHP网络技术及应用79
3.1HTTP协议详解79
3.1.1HTTP协议与HTTP/2协议79
3.1.2HTTP协议如何工作81
3.1.3HTTP应用:模拟灌水机器人86
3.1.4垃圾信息防御措施92
3.2抓包工具96
3.2.1抓包工具分类96
3.2.2Fiddler功能与原理96
3.2.3安装Fiddler97
3.2.4Fiddler基本界面98
3.2.5使用Fiddler进行HTTP断点调试101
3.3Socket进程通信机制及应用104
3.3.1进程通信相关概念104
3.3.2Socket演示:实现服务器端与客户端的交互105
3.3.3使用wireshar分析TCP/IP数据包108
3.3.4Socket函数原型114
3.3.5PHP中的Socket函数114
3.3.6Socket交互应用:使用Socket抓取数据117
3.4cURL工具及应用119
3.4.1建立cURL请求的基本步骤119
3.4.2检查cURL错误和获取返回信息120
3.4.3在cURL中伪造头信息122
3.4.4在cURL中用POST方法发送数据124
3.4.5使用cURL实现简单的文件上传服务125
3.4.6cURL批处理129
3.4.7cURL设置项130
3.5简单邮件传输协议SMTP131
3.5.1SMTP协议如何工作132
3.5.2SMTP协议常用命令133
3.5.3SMTP协议应用:使用Socket发送邮件133
3.6WebService的前世今生138
3.6.1WebService简介138
3.6.2Web服务的实现模式138
3.6.3简单对象访问协议SOAP140
3.6.4调试工具soapUI145
3.7Cookie详解148
3.7.1Cookie的基本概念及设置148
3.7.2PHP和JavaScript对Cookie的操作149
3.7.3Cookie存储机制及应用151
3.7.4Cookie跨域与P3P、CORS协议153
3.7.5本地存储localStorage156
3.8Session详解158
3.8.1Session的基本概念及设置158
3.8.2Session的工作原理159
3.8.3Session入库161
3.8.4集群环境下的Session处理165
3.8.5Cookie与Session问答166
3.9本章小结167
第4章RPC与服务治理的概念169
4.1理解RPC170
4.1.1RPC的原理171
4.1.2RPC的组成元素172
4.2HPROSE的介绍174
4.3何为服务治理176
4.4服务发现与服务注册177
4.4.1Paxos协议178
4.4.2ZooKeeper的介绍与安装179
4.4.3深入了解ZooKeeper180
4.4.4ZooKeeper的应用183
4.4.5etcd的介绍185
4.4.6在PHP中使用etcd参与服务治理187
4.5高性能网络库193
4.6微服务概念简介194
4.7本章小结196
第5章PHP与数据库基础197
5.1什么是PDO197
5.1.1PDO预定义类198
5.1.2如何使用PDO199
5.1.3PDO参数绑定与预编译200
5.1.4PDO事务处理205
5.1.5PDO的效率问题206
5.2数据库应用优化206
5.2.1索引与性能分析206
5.2.2服务器和配置的优化209
5.2.3MySQL瓶颈及应对措施211
5.3数据库设计212
5.3.1范式与反范式212
5.3.2数据库分区213
5.3.3分表的应用215
5.4MySQL的高级应用217
5.4.1MySQL视图217
5.4.2MySQL存储过程和事件调度220
5.4.3用MySQL模拟消息队列223
5.4.4SQL注入漏洞与防范226
5.4.5MySQL全文搜索与Elasticsearch231
5.5数据库锁与事务239
5.5.1数据库锁239
5.5.2数据库事务246
5.5.3分布式事务254
5.6数据库中间件257
5.6.1中间件的介绍257
5.6.2数据库中间件的原理与实现257
5.7本章小结263
第6章PHP框架实现原理264
6.1MVC模式264
6.2PHP框架Lonicera 0.1265
6.2.1实现bootstrap267
6.2.2路由器层的实现269
6.2.3数据模型274
6.2.4视图层实现282
6.2.5对框架的初步改进286
6.3Lonicera 0.2框架增强290
6.3.1引入异常机制290
6.3.2和插件的原理与实现293
6.3.3Request增强与安全防御296
6.4Lonicera框架0.3版实现297
6.4.1composer的介绍与安装297
6.4.2composer的类加载机制301
6.4.3使用composer来重构框架303
6.4.4基于composer的Model增强307
6.4.5控制反转与依赖注入309
6.5本章小结318
第7章PHP扩展开发319
7.1为什么要开发PHP扩展319
7.2搭建PHP扩展框架319
7.2.1PHP源代码目录320
7.2.2ext_skel工具320
7.2.3Windows平台环境配置320
7.2.4Linux平台环境配置323
7.2.5PHP的生命周期325
7.3PHP内核中的变量327
7.3.1PHP变量在内核中的存储方式327
7.3.2PHP内核变量访问宏329
7.3.3引用计数器与写时复制330
7.4PHP内核中的HashTable分析332
7.4.1PHP内核HashTable的数据结构332
7.4.2HashTable的代码实现337
7.5Zend API详解与扩展编写341
7.5.1什么是Zend引擎342
7.5.2Zend引擎内存管理342
7.5.3PHP扩展的架构342
7.5.4接收用户传递的参数350
7.5.5在PHP扩展中创建变量357
7.5.6在PHP扩展中为变量赋值360
7.5.7错误和输出API371
7.5.8运行时信息函数374
7.5.9调用用户自定义函数374
7.5.10PHP配置项376
7.5.11创建常量的宏379
7.5.12对象创建与操作380
7.6专享ID生成扩展实现383
7.6.1snowflake算法384
7.6.2自旋锁原理385
7.6.3扩展的实现387
7.7本章小结389
第8章缓存详解390
8.1认识缓存390
8.1.1为什么使用缓存390
8.1.2命中率391
8.1.3缓存更新策略392
8.1.4缓存优选数据量394
8.2文件缓存394
8.2.1文件缓存机制394
8.2.2文件缓存开源产品Secache396
8.3Opcode缓存398
8.4客户端缓存404
8.4.1客户端缓存规则405
8.4.2HTTP协议中的缓存使用405
8.4.3HTTP缓存实例408
8.4.4HTML 5中的Application Cache410
8.5Web服务器缓存411
8.5.1Apache缓存412
8.5.2Nginx缓存412
8.6本章小结414
第9章Memcached使用与实践415
9.1为什么要用Memcached415
9.2Memcached的安装及使用415
9.2.1安装Memcached服务器416
9.2.2安装Memcached客户端417
9.2.3使用memcache扩展访问Memcached服务器418
9.2.4使用Memcached加速Web应用421
9.3深入了解Memcached422
9.3.1Memcached如何支持高并发422
9.3.2使用Slab分配算法保存数据422
9.3.3删除过期item426
9.3.4使用LRU算法淘汰数据427
9.3.5Memcached多线程模型428
9.4Memcached分布式布置方案431
9.4.1普通Hash分布431
9.4.2一致性Hash分布432
9.4.3一致性Hash分布算法实例434
9.5本章小结436
第10章Redis使用与实践437
10.1Redis的安装及使用437
10.1.1Redis安装步骤437
10.1.2修改Redis配置文件438
10.1.3运行Redis服务器439
10.1.4key相关命令439
10.1.5Redis支持的数据类型441
10.1.6Redis排序命令详解447
10.2事务处理449
10.2.1事务处理原理449
10.2.2事务处理实现450
10.3持久化452
10.3.1内存快照452
10.3.2日志追加452
10.4主从同步453
10.4.1Redis主从同步原理453
10.4.2Slave端的工作流程454
10.4.3Master端的工作流程457
10.5Redis集群实战462
10.5.1Redis集群搭建462
10.5.2Redis集群原理467
10.6扩展库phpredis安装及使用470
10.7Redis应用实践470
10.7.1使用消息队列发布微博471
10.7.2Redis替代文件存储Session472
10.8深入了解Redis内核475
10.8.1内存淘汰475
10.8.2对象引用计数器477
10.8.3自动关闭超时连接479
10.8.4清除过期数据481
10.9本章小结482
第11章高性能网站架构方案483
11.1如何优化网站响应时间483
11.1.1吞吐率484
11.1.2压力测试485
11.1.3持久连接487
11.2MySQL响应速度提高方案:HandlerSocket491
11.2.1HandlerSocket工作原理491
11.2.2HandlerSocket安装和配置491
11.2.3PHP-HandlerSocket性能测试493
11.3MySQL稳定性提高方案:主从复制494
11.3.1主从复制工作原理494
11.3.2主从复制配置495
11.3.3连接主从服务器497
11.4Web应用加速方案:Varnish499
11.4.1传统代理与反向代理499
11.4.2Varnish安装和配置500
11.4.3Varnish性能测试501
11.4.4修改缓存规则503
11.4.5监控Varnish运行状态505
11.5异步计算方案:Gearman506
11.5.1Gearman工作原理506
11.5.2安装Gearman和PHP扩展508
11.5.3使用Gearman异步发送邮件508
11.6本章小结510
第12章代码调试和测试511
12.1调试PHP代码511
12.1.1PHP调试函数511
12.1.2断点调试与变量跟踪工具Xdebug515
12.1.3phpdbg的使用介绍518
12.1.4使用strace来跟踪定位PHP程序520
12.2前端调试525
12.2.1Firebug调试API525
12.2.2使用Firebug调试DOM结构527
12.2.3使用Firebug进行远程调试528
12.3日志管理530
12.3.1PHP日志531
12.3.2Apache/Nginx服务器日志531
12.3.3MySQL日志534
12.4代码性能测试技术537
12.4.1时间点测试537
12.4.2文件查看工具WinCache-Grind538
12.4.3性能测试注意事项540
12.5单元测试541
12.5.1单元测试框架PHPUnit的安装541
……
第13章Hash算法与数据库实现560
×
Close
添加到书单
加载中...
点此新建书单
×
Close
新建书单
标题:
简介:
蜀ICP备2024047804号
Copyright 版权所有 © jvwen.com 聚文网