注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计网络编程PHP精粹:编写高效PHP代码

PHP精粹:编写高效PHP代码

PHP精粹:编写高效PHP代码

定 价:¥59.00

作 者: (美)米切尔,沙非克,蒂兰 著,彭冲,胡琳 译
出版社: 机械工业出版社
丛编项:
标 签: PHP

购买这本书可以去


ISBN: 9787111399070 出版时间: 2012-10-01 包装: 平装
开本: 16开 页数: 238 字数:  

内容简介

  本书是资深PHP技术专家多年工作经验的结晶,从数据库、API、设计模式、安全性、应用程序性能、自动化测试、质量保证等核心方面总结了编写高效PHP代码的技巧和最佳实践,旨在让有一定基础的PHP开发者在进阶修炼的路上尽可能少走弯路!全书包含大量精心设计的示例,不仅能帮助读者理解具体的技术知识,而且能让读者学到作者解决各种问题的思路,授人以鱼同时授人以渔。 本书共8章,每章一个主题:第1章重新阐述了面向对象编程中的核心概念和技术,目的是确保基础知识匮乏的开发者能正确理解它们;第2章总结了PHP开发中与数据库相关的各种最佳实践,如数据持久化、数据存储、MySQL使用方法、PDO,以及数据库的设计等;第3章详细讲解了API及其使用方式;第4章总结了PHP开发中常用的各种设计模式及其使用原则;第5章讲解了如何编写安全的PHP代码,对PHP开发中各种常见的安全问题进行了总结和分析;第6章从基准测试、系统测试、数据库、文件系统等方面探讨了PHP应用程序的性能问题;第7章讲解了PHP的自动化测试,包含单元测试、数据库测试、负载均衡测试等;第8章总结了PHP开发中与质量保证相关的最佳实践,包括质量测量、编码标准、源代码管理、自动部署等。除此之外,本书还对PEAR、PECL,以及PHP标准库进行了讲解。

作者简介

  Lorna Mitchell 资深PHP技术专家,常驻英国利兹的PHP顾问,从事软件开发相关工作多年,尤其擅长与数据和API相关的知识。活跃于PHP社区,是美国西北部PHP技术社群的组织者,曾组织过多次社团会议并发表演讲,是开源项目Joind.in的领导者。她还是一位技术作家,热衷于分享自己的经验,经常在多种流行杂志和网站上发表技术文章。Davey Shafik 资深LAMP技术专家,精通PHP,在HTML、CSS、JavaScript等Web相关技术领域也积累了十分丰富的经验。他还是一位经验丰富的技术作家,不仅发表了大量的技术文章,而且著有《ThePHP Anthology: 101 Essential Tips, Tricks & Hacks》和《PHPArchitect’s Zend PHP 5 Certification Study Guide》等著作。Matthew Turland资深PHP技术专家,有近10年PHP开发经验,是PHP 5和ZendFramework的Zend认证工程师。他是Zend Framework、PHPUnit和Phergie等PHP开源项目的参与者,为这些项目撰写了大量文章。他还是一位经验丰富的技术作家,不仅撰写了《PHPArchitect’s Guide to Web Scraping with PHP》等著作,而且还在《PHPArchitect》等杂志上发表了大量文章。

图书目录

 目录译者序前 言第1章 面向对象编程11.1 为什么要使用面向对象编程11.2 OOP简介11.2.1 声明类11.2.2 类的构造21.2.3 对象实例化31.2.4 自动加载31.2.5 使用对象41.2.6 使用静态属性和方法41.2.7 对象和命名空间51.3 对象的继承71.4 对象和函数91.4.1 类型提示91.4.2 多态性91.4.3 对象和引用101.4.4 作为函数参数传递的对象111.4.5 流畅的接口121.5 public、private以及protected121.5.1 public131.5.2 private131.5.3 protected131.5.4 选择正确的可见性141.5.5 使用getter和setter来控制可见性141.5.6 使用神奇的_get和_set方法151.6 接口161.6.1 SPL Countable接口示例161.6.2 计数对象161.6.3 声明和使用接口171.6.4 识别对象和接口171.7 异常181.7.1 处理异常181.7.2 为什么要处理异常191.7.3 抛出异常191.7.4 扩展异常191.7.5 捕捉特定类型的异常201.7.6 设定一个全局异常处理程序211.7.7 使用回调221.8 更多神奇的方法221.8.1 使用__call()和__callStatic()方法221.8.2 使用__toString()方法输出对象231.8.3 序列化对象241.9 本章小结25第2章 数据库262.1 数据持久化和Web应用程序262.2 选择如何存储数据262.3 用MySQL建立一个食谱网站272.4 PHP数据库对象292.4.1 使用PDO连接到MySQL292.4.2 从表中选择数据302.4.3 数据提取模式302.4.4 参数和预处理语句312.4.5 绑定值和预处理语句的变量322.4.6 插入一行并获取ID342.4.7 有多少行被插入、更新或删除342.4.8 删除数据352.5 处理PDO中的错误352.5.1 处理预处理时的问题362.5.2 处理执行时的问题362.5.3 处理提取数据时的问题372.6 高级PDO特征372.6.1 事务和PDO382.6.2 存储过程和PDO392.7 设计数据库392.7.1 主键与索引402.7.2 MySQL解析402.7.3 内部连接432.7.4 外部连接432.7.5 聚合函数和Group By442.7.6 规格化数据462.8 数据库—排序46第3章 API473.1 开始之前473.1.1 使用API工具473.1.2 添加API到你的系统473.2 面向服务的架构473.3 数据格式483.3.1 使用JSON493.3.2 使用XML503.4 HTTP:超文本传输协议533.4.1 HTTP信封533.4.2 发送HTTP请求543.4.3 HTTP状态码573.4.4 HTTP文件头583.4.5 HTTP动词613.5 理解并选择服务类型613.5.1 PHP和SOAP623.5.2 使用WSDL描述SOAP服务633.6 调试HTTP653.6.1 使用日志收集信息653.6.2 检查HTTP流量653.7 RPC服务663.7.1 使用一个RPC服务:Flickr示例663.7.2 建立一个RPC服务683.8 Ajax和Web服务693.9 开发和使用RESTful服务753.9.1 超越Pretty URL753.9.2 RESTful原则763.9.3 建立一个RESTful服务763.10 设计一个Web服务823.11 提供的服务83第4章 设计模式844.1 什么是设计模式844.1.1 选择一个最合适的844.1.2 单例模式844.1.3 Traits864.1.4 注册表模式874.1.5 工厂模式904.1.6 迭代模式914.1.7 观察者模式984.1.8 依赖注入1014.1.9 模型–视图–控制器1044.2 模式的形成114第5章 安全性1155.1 是否有些偏执1155.2 过滤输入、避免输出1165.3 跨站脚本1175.3.1 攻击1175.3.2 修复1185.3.3 在线资源1195.4 伪造跨站请求1195.4.1 攻击1195.4.2 修复1205.4.3 在线资源1215.5 会话固定1225.5.1 攻击1225.5.2 修复1225.5.3 在线资源1235.6 会话劫持1235.6.1 攻击1235.6.2 修复1245.6.3 在线资源1255.7 SQL注入1255.7.1 攻击1255.7.2 修复1265.7.3 在线资源1275.8 储存密码1275.8.1 攻击1275.8.2 修复1275.8.3 在线资源1285.9 暴力破解攻击1295.9.1 攻击1295.9.2 修复1305.9.3 在线资源1315.10 SSL1315.10.1 攻击1315.10.2 修复1325.10.3 在线资源1325.11 资源132第6章 性能1346.1 基准测试1346.2 系统测试1396.2.1 代码缓存1396.2.2 INI设置1436.3 数据库1446.4 文件系统1446.5 程序概要分析1516.5.1 安装XHProf1526.5.2 安装XHGui1556.6 本章小结161第7章 自动测试1637.1 单元测试1637.1.1 安装PHPUnit1637.1.2 编写测试用例1637.1.3 运行测试1657.1.4 测试替身1677.1.5 编写可测试的代码1707.1.6 测试视图和控制器1737.2 数据库测试1777.2.1 数据库测试用例1777.2.2 连接1787.2.3 数据集1787.2.4 断言1807.3 系统测试1817.3.1 初始设置1817.3.2 命令1827.3.3 定位器1837.3.4 断言1847.3.5 数据库集成1847.3.6 调试1867.3.7 自动编写测试1877.4 负载测试1877.4.1 ab1877.4.2 Siege1887.5 本章小结189第8章 质量保证1908.1 使用静态分析工具测量质量1908.1.1 phploc1908.1.2 phpcpd1918.1.3 phpmd1928.2 编码标准1938.2.1 使用PHP代码探测器检查编码标准1938.2.2 查看违反编码标准的地方1958.2.3 PHP代码探测器标准1968.3 文档和代码1968.3.1 使用phpDocumentor1978.3.2 其他文档工具1998.4 源代码管理1998.4.1 使用集中式版本控制2008.4.2 为了源代码管理使用版本控制2018.4.3 设计版本库的结构2028.4.4 分布式的版本控制2048.4.5 代码的社会性工具2058.4.6 使用Git进行源代码控制2068.4.7 将版本库作为构建过程的根2078.5 自动部署2078.5.1 立刻切换到一个新版本2088.5.2 管理数据库变更2088.5.3 自动部署和Phing2098.6 准备部署211附录A PEAR和PECL212附录B PHP标准库229附录C 进一步参考信息236 

本目录推荐