前言
从1994年诞生到至今,PHP已经有17个年头,一开始并不被大家熟知,现在已成为最热门的Web开发技术之一。它因为具有简单高效、开源免费、跨平台等特性而受到广大Web开发人员的欢迎,被近4000万个网站所采用,其中不乏Yahoo!、Google、百度、新浪、腾讯、阿里巴巴等国内外知名的互联网企业。PHP成功入选全球5大最受欢迎的编程语言,并且是入选的唯一脚本语言。国内80%以上的动态网站都在使用PHP进行相关开发,Alexa TOP500中国网站的排名中有394家使用了PHP技术,比例为78.8%。PHP至今仍然位居互联网应用之首,涉及互联网的各个应用领域,包括社区BBS、SNS、CMS、电子商城、团购,以及现在非常火热的微博应用平台等,它的身影无处不在。
互联网具有发展快、不断创新的特点,这决定了只有以尽可能快的开发速度和尽可能低的成本才能取胜。与其他同类编程语言相比较,PHP具有开发速度快、运行效率高、安全性好、可扩展性强、开源等特点。随着Web 2.0的进一步发展和SNS的兴起,以及云计算和物联网等新技术的出现,将不断催生出新的产业和服务来。支撑这些新型产业和服务的技术体系非PHP莫属。随着3G和移动互联网技术的兴起,越来越多的Web应用也选择了PHP作为主流的技术方案。PHP现在可与Java等主流编程语言相抗衡,越来越多的公司在为站点提供更加强大的功能时都采用了PHP。PHP的语法独特,混合了C、Java、Perl的语法特性,同时还有自创的新语法,它可以比CGI或Perl更快速地执行动态网页。在未来3年内,据预测,PHP的从业人数将增加42%,远超Java的13%和.NET的24%,PHP开发人员的待遇也“水涨船高”。
写作本书的目的
一本好的程序设计类图书应该不只是纯粹地讲述理论,而应该注重实践。在写书的过程中,我们一直都以实用性为目标,努力让所写的内容落到实处。以本书的篇幅来看,很明显,目前互联网领域的主要应用有社区BBS、SNS社交网络、网上商城、CMS内容管理系统等,针对这些应用,国内已经发布了许多相关的PHP产品,例如:在社区BBS领域中,康盛创想旗下的Discuz!是全球范围内用户量最大、覆盖面最广的社区软件平台,拥有超过140万家的网站用户,是中小网站首选的社区与网站建设平台;在SNS社交网络领域中,UCHome自问世以来就备受瞩目,其在SNS建站平台领域中也是市场份额最大的产品;在网上商城领域,ShopNC是国内网上商城的代表产品,包括单用户和多用户两个版本;在CMS内容管理系统领域,PHPCMS得到了近10万网站的认可,且在大中型商业网站中应用得越来越多。正是由于这些产品被大家广泛使用,为了解决广大建站者在使用过程中的疑惑,避免产生“闭门造车”的困局,所以我们决定出一本介绍这些产品的功能和结构及如何在它们的基础上进行二次开发的书籍。
本书的内容及特色
全书一共25章和5个附录,一共分为五大部分:准备篇详细介绍了Apache的使用方法和基本原理,以及PHP与MySQL开发环境的搭建;PHP篇全面讲解了PHP的语法知识和工作原理;MySQL篇系统地讲解了MySQL数据库的基本操作,以及开发与管理的方法;二次开发实战篇以实战案例的方式详细讲解了UCenter、Discuz!、UCHome、ShopNC、PHPCMS等各种产品的使用方法及其二次开发技术;附录是UCenter、Discuz!、UCHome、ShopNC、PHPCMS等产品的数据字典,可供开发者查阅。与市场上已经有的所有同类书相比较,本书的内容可能是最全面的,几乎应有尽有。
前三部分的内容能帮助完全没有开发经验的读者完全掌握PHP开发的必备知识,进入PHP开发的世界,第四部分则能帮助有经验的读者解决他们在进行二次开发时遇到的各种难题。大家知道,对编程而言,最重要的既不是代码,也不是功能,而是编程思想,本书不仅仅是一本讲解PHP技术的图书,更是一本鼓励和引导读者超越代码层面,对整个站点的“设计”进行思考的书。
本书面向的读者
本书适合的读者对象如下:
❑中初级的PHP开发工程师
❑对UCenter、Discuz!、UCHome、ShopNC、PHPCMS等产品进行二次开发的高级PHP开发工程师
❑PHP网站的设计、制作及维护人员
❑大中专院校的在校学生以及社会培训班的学员
如何阅读本书
如果你是初学PHP,完全没有PHP基础或没有系统掌握PHP的基础知识,强烈建议你从第1章开始阅读,按照本书的内容安排循序渐进地进行学习,这对系统掌握PHP技术十分有好处。如果你已经有一定的PHP基础和开发经验,但是MySQL还不曾系统地学习过,那么建议直接学习本书第三部分关于MySQL的内容;如果你已经有比较好的PHP技术基础,想从事目前互联网领域的各个主流开源产品的二次开发,可以仔细阅读本书第四部分。总之,我们根据不同水平层次的读者对本书的内容进行了合理地划分,以便能让各种读者的需求都能得到满足,有针对性地阅读自己需要或感兴趣的内容。
最后,真诚地期望大家通过本书来探索PHP。无论是刚入门的PHP新手,还是有多年开发经验的专家,相信你们在看完本书之后都会有所收获。当然,一个真正的程序员,他的思想必须是超越具体语言和工具的,期待有一天,大家可以在了解书中这些知识的基础上,总结出属于自己的更加优秀的开发框架,甚至是设计思想,开发出广受用户欢迎的优秀站点。
补充参考资料
网上有许多关于PHP开源产品的参考信息,以下这些网站有丰富的相关资源:
❑PHPChina开源社区:http://www.phpchina.com/
❑Zend官网:http://www.zend.com/
❑康盛官网:http://www.comsenz.com/
❑ShopNC官网:http://www.shopnc.net/
❑PHPCMS官网:http://www.phpcms.com/
致谢
本书由PHPChina开源社区的资深会员共同编写,其中PHP基础与商城部分主要由ShopNC创始人吴津津编写;Discuz!、UCenter部分主要由田睿编写;UCHome部分主要由李云编写;Zend产品部分主要由刘昊编写;其他参与编写的有王参加、侯宝剑等。此外,本书在编写过程中还参阅了大量国内外的文献和资料。
首先要特别感谢康盛新创CEO戴志康(大C)先生,以及Discuz!团队和PHPCMS团队的大力支持!在编写过程中,PHPChina技术部和该领域的一些专家都给予了非常好的指导意见,在此表示感谢。此外,还要感谢活跃在PHP开源社区PHPChina论坛上的会员和PHP爱好者们。由于作者水平有限,编写时间也很仓促,书中难免会有一些疏漏或错误,恳请大家批评指正。如果大家有任何问题、意见或建议,可在PHPChina官方论坛(http://bbs.phpchina.com/)本书的专属版块中与作者交流。
PHPChina开源社区(www.phpchina.com)
2011年8月