本书是最新版本PHP 5的权威指南,其中包含创建者PHP的创建者Rasmus Lerdorf的独到的见解。本书以一种清晰而简练的风格介绍了PHP语言的语法和程序设计技术,并通过大量的示例演示了它们的正确使用方法和习惯用法。本书还给出了设计风格提示和实际的程序设计建议,这些将帮助你不仅成为一个PHP程序员,而且将是出色的PHP程序员。
序言
前言
第1章 PHP简介
PHP能做什么
PHP发展简史
安装PHP
PHP纵览
第2章 语言基础
词法结构
数据类型
变量
表达式和操作符
流控制语句
包含代码
在Web页面中嵌入PHP
第3章 函数
函数调用
定义函数
变量作用域
函数参数
返回值
可变函数
匿名函数
第4章 字符串
引用字符串常量
输出字符串
访问单个字符
整理字符串
编码和转义
比较字符串
处理和查找字符串
正则表达式
风格正则表达式
Perl兼容正则表达式
第5章 数组
索引数组和关联数组
识别数组元素
在数组中存储数据
多维数组
析取多个值
在数组和变量间转换
遍历数组
排序
作用于整个数组
使用数组
第6章 对象
术语
创建一个对象
访问对象属性和方法
声明一个类
自省
串行比
第7章 Web技术
HTTP基础
变量
服务器信息
表单处理
设置响应头
维持状态
SSL
第8章 数据库
第9章 图形
第10章 PDF
第11章 XML
第12章 安全
第13章 应用技术
第14章 扩展PHP
第15章 Windows 上的PHP
附录A 函数参考
附录B PHP扩展概览
索引
译序
和很多译者一样,在完成翻译时,我的心情是愉悦的,经过四个月的努力,终于可以将这本书献给所有和我一样热爱开源,热爱PHP的朋友,这对于我来说是件值得庆贺的事。在六年的LAMP技术生涯中,很多朋友帮助过我,他们鼓励和鞭策着我不断进步。有了他们,今天我才有能力来回报国内PHP社区的众多朋友,这是开源社区共享互助精神的体现。身处友好的集体当中,总会感觉到巨大的精神力量,这让我对PHP的发展充满信心。
网络的本质在于开放和共享,包括知识、技术和个人体验的共享。PHP的成功,正是由于其强烈的开放性,犹如海纳百川,吸引了无数优秀和勤奋的程序员投身其中,使其不断发展壮大。PHP4的稳定、PHP5的先进以及PHP6的出现,让越来越多的人为PHP强大的生命力和蓬勃生机所吸引。全球最大的网站之一Yahoo!、最大的在线百科全书WikiPedia,最大的开源社区Sourceforge、最热门的Web2.0网站Flikr、Digg等等都是由PHP驱动。
而随着今年互联网热潮的再一次涌起,越来越多国内的互联网企业也选择了PHP,包括国内几大门户如新浪、搜狐、雅虎中国、腾讯、Tom等也都大量采用PHP技术,PHP人才也越来越抢手。但正如戴志康所说的,国内不少企业都在感叹招聘到优秀的PHP程序员很难,因为PHP程序员通常都是自学成才,没有经过系统的学习和培训。同时,国内PHP相关的优秀书籍也非常少,这使得很多PHP初学者进步缓慢,基础也不扎实。
引进国外优秀的PHP书籍,让国内PHP程序员更快成长,这正是我们三个译者翻译本书的初衷。实际上这个想法也是PHPMore团队共同的想法,从2004年创建国内首份PHP电子杂志《PHP & More》时就有了,直到今天才真正实现(在此多谢博文视点的周筠老师)。本书是个良好的开始,接下来我们还会引进更多PHP优秀书籍。
按照Amazon.com的说法,本书是一本PHP的行业性标准书籍(The industry standard book on PHP)。它的特点归结为两点,就是“权威”、“细致”。
权威
本书主要作者为PHP的创始人Rasmus Lerdorf,他不但在1995年创建了最初版本的PHP,这些年来一直为PHP的成长战斗在最前沿,为PHP在全世界的繁荣做出了很大贡献(他也主导了PHP6的开发,在本书译稿完成之时你已经可以下载到PHP6)。
本书的其他贡献者还包括我们所熟知的PHP社区的一些顶级PHP程序员,如Wez Furlong (PECL的主要创建者,PDO扩展的创建者)、Chris Shiflett(PHP安全专家、《Essential PHP Security》作者)。
本书内容为PHP语言最新的内容,甚至涵盖了PHP5主要的最新特性,如面向对象、XML、PDO等。
细致
本书是很好的基础书籍,通过对PHP语法的细细梳理,有助于读者进行全面系统的学习,构建起完整的PHP知识体系。它没有提供一个完整的项目例子,只是一些零散的示例,但是整本书涵盖了PHP语言本身所有真正的精华,值得反复细致地阅读。
基于开发实例的书籍虽然容易让读者很快就学会写一个简单的小项目,但是限于篇幅,不可能去细致讨论技术本身的细节。如果只看这样的书,就会常常在实际开发中发现基础知识不扎实,而且掌握的技能很零散,缺胳膊少腿。例如正则表达式,真正熟悉的人很少,都是通过查阅PHP手册模仿例子来写,很少有人真正认认真真地学一遍,都是用时才左抄右抄,凑出一个勉强能用的模式。这样有时可能也能解决问题,项目也总算可以完工,但对于程序员自身的水平提高没有什么帮助。
当然尽管这本书相当不错,它也不能让你马上成为高手。要成为一个优秀的PHP程序员,还需要读者不断勤奋学习和积累实战经验。
在本书翻译过程中我们三位译者都尽自己的努力认真细致地完成每一处细节的翻译,但百密一疏,也许会有少量遗留BUG,请读者帮忙抓虫,抓虫有奖 ;-)
秉承PHP“开放和共享”的理念,本书在PHPChina.com论坛上开有专门的版块用于勘误、读者反馈、交流和答疑。我们不怕贻笑大方,唯恐误人子弟,欢迎任何批评和建议,让这本书更加完善,帮助更多PHP同行。
论坛地址:http://www.phpchina.com/bbs/forumdisplay.php?fid=141
陈浩 (Haohappy)
2007年1月于厦门
无封面