在过去的十年间,PHP已经从一套为Web站点开发人员提供的简单工具转化成完整的OOP(面向对象编程)语言了。在Web应用开发方面,PHP现在可与Java和C#这样的主流编程语言抗衡,越来越多的公司为了给站点提供更加强大的功能都采用了PHP。原因很清楚:PHP既是一门易学的语言,又具有强大的特性。.
通过阅读本书,你将会深入理解OOP理论,并学到如何使用框架和高级的系统互操作功能,最大限度地发挥出PHP编程的威力。
读者对象
这是一本高级书。我非常慎重地选择本书应该包含的内容以及读者应该掌握的知识。读者应该对HTTP和PHP有深刻的理解,也就是说,应该了解如何创建Web页面和Web表单,并且还应该理解像HTTP请求生命周期这样的关键概念。
如果你还不了解这些内容,那么建议阅读由Larry ullman合著的PHP for the Web:Visual QuickStart Guide一书 。这是一本非常好的介绍PHP编程的书,任何希望成为PHP开发人员的人都绝对应该阅读它。
如果你自己的PHP编程水平已达到中高级,那么本书正好适合你。
本书结构
本书每一章内容都在前面章节的基础上展开,同时也考虑到读者的基础参差不齐。如果你认为已经了解了某章讲述的内容,那么建议你跳过那一章,但最好还是读一下每章末尾的“小结”部分,那是每一章内容的扼要总结。不过,古人云“温故而知新”,就算是最熟练的程序员应该也会在每章中有新的收获。
本书分为五个部分。
第一部分,OOP和模式。这部分是学习高级的OOP概念必备的基础知识。该部分直接进入主题,讲解了抽象类、接口、静态方法、单例和工厂之类的模式,以及异常等内容。最后介绍了PHP 6所具有的新特性。
第二部分,测试和文档编写。这部分包括了所有那些相关的“外围”概念,如测试驱动开发和自动部署等。讲述了如何编写优秀的文档,并且介绍了PHPDoc和DocBook等几种文档标准。这部分还介绍了反射API的内容,使读者了解如何从程序中获取元数据。最后还讨论了持续集成,以及如何使用Phing和Xinc这样的工具来改善开发工作流。..
第三部分,SPL(标准PHP库)。SPL包含了一些最高级的PHP代码。它提供了对于像索引器和迭代器这样的高级OOP概念的语言支持,还提供了处理异常的结构,以及像观察者/发布者这样的模式。这部分信息使大家可以创建出更加优美并且结构良好的类。
第四部分,MVC模式。MVC(模型—视图—控制器)可能是PHP开发人员用到的最有用的开发模式。它可用来为应用程序创建结构,并且调配团队中最好的资源来完成工作。对这一模式的深刻理解可能是任何PHP开发人员都必须掌握的最重要的职业技能,所以本书力求完整地解释这一模式。这一部分还介绍了Zend框架,这是为众多PHP公司所接受的一套基于MVC的框架。一开始,我们介绍了如何逐步建立起一个完整的框架应用程序,并使它开始运行,然后讲解了Zend框架的核心概念和高级特性。
第五部分,Web 2.0。这部分介绍了关于Web 2.0所需要了解的所有事项。你将会学到关于Ajax、JSON、SOAP Web服务以及SSL客户端验证等方面的信息。另外,这部分还包括了大量非常有用的辅导材料,这些辅导材料是基于个人经验提供的。
联系作者
欢迎大家随时通过电子邮箱Kevin.McArthur@StormTide.ca与作者取得联系。在http://www. stormtide.ca/pro-hpp-book或者Apress出版社网站的http://www.apress.com/book/view/9781590598191页面上可以获得本书的最新信息 。此外,大家还可以访问#PHP EFnet通过IRC与作者聊天 。
致谢
本书是在数千名开发人员组成的社区十年来的技术创新基础上写成的。我感谢他们所有人,并以此书向他们的卓越成果致敬。
感谢David Fugate给了我编写这本书的机会,以及在写本书的过程中给我提供的必要的指导。
还要感谢Michael Geist,正是他提供的帮助和建议使我能够顺利地解决困难。
.我还必须感谢我的朋友和家人对我的支持,没有他们,我不可能获得这些成果。
最后,我要对Apress出版社的所有人表示我最诚挚的谢意,其中有的人参与了本书的出版工作,有的人则帮助其他作者出版了高质量著作。没有他们,这本书就不会面世。...