到目前为止,Web 是团队和个人沟通的最大媒介。网页承载着人造卫星拍摄的地球全貌图像、外太空生命探索、家庭个人相册、购物车和产品列表。很多网页都是用PHP 驱动的,这是一个为HTML 而生的开源脚本语言。
自1994 年创造以来,PHP 因其惊人的增长风靡网络,IBM 和Oracle(仅举几例)也曾推荐。
数百万的网站使用PHP 足以证明它的流行和易用。每天人们可以学习PHP 并且构建强大的动态网页。Marc Andreessen,Andreessen Horowitz 的搭档和 Netscape 社区的创始人,最近说过 PHP 已经取代 Java 成为最主要的 Web 语言。
PHP 5 以后的语言内核突出了强大的字符串和数组处理工具,还有对面向对象的支持和优化。用可选的扩展模块,一个PHP 应用可以和MySQL 或Oracle 数据库交互、画图、创建PDF 文件和解析XML 文件。你可以用 C 语言写自己的扩展模块,例如,要为已有的代码库提供一个PHP 接口。你也可以在Windows 上运行 PHP,也可以让你控制其他Windows 应用程序,例如用COM 调用Word 和Excel,或者使用ODBC 和数据库交互。
这本书是PHP 语言的指南。当读完后,你会知道PHP 语言是如何工作的,如何在标准的PHP 中使用强大的扩展,如何设计自己的PHP 网页程序。读者
PHP 是一个文化熔炉。网页设计者会感受它的易用性和便利性,程序员会感受它的易扩展性、强大、多样性和速度。两种文化需要清晰和精确地引申到语言。如果你是一个程序员,这本书适合你。我们展示了PHP 语言的蓝图,并且不浪费你的时间来讨论具体的例子。许多例子都有详细的解释,并且实际编程建议和代码风格提示都使你不止是一个PHP 程序员,而是更好的PHP 程序员。
如果你是一个网页设计者,会感受到特定的技术都有清晰有用的指南,比如XML、会话、PDF 生成和图像。你可以快速获取到你需要的信息,用简单术语表达的基本的编程原则。这本书已经过完整的校对来应对最新的PHP 5 的特性。
前提
该书假设你有HTML 的工作经验,如果你不会HTML,需要在学习PHP 之前从一些简单的网页获得一些经验。更多关于HTML 的信息,我们推荐 Chunk Musciano 和Bill Kennedy 写的HTML & XHTML: The Definitive Guide 一书(由O’Reilly 出版)。
本书内容
我们精心编排了本书内容让你可以从开始顺序阅读或者跳着阅读感兴趣的主题。全书共有17 章和1 个附录。如下所示。
第1 章,PHP 介绍
讲述关于PHP 的历史并概述可以用PHP 程序做什么。
第2 章,语言基础
PHP 元素的简明指南。比如定义符、数据类型、操作符和流控制语句。
第3 章,函数
讨论用户定义的函数。包含作用域、变量长度参数列表、变量和匿名函数。
第4 章,字符串
涵盖你在用PHP 代码构建、解析、搜索和修改字符串时需用到的函数。
第5 章,数组
介绍用PHP 代码构建、处理和排序数组的函数和详细注释。
第6 章,对象
涵盖PHP 的面向对象的新特性。在本章中,你会了解类、对象、继承和自省。
第7 章,Web 技术
讨论网页基础,例如表单参数和验证、Cookie 以及会话。
第8 章,数据库
讨论PHP 使用数据库的模块和函数,使用PEAR 数据库和MySQL 数据库作为例子。同时,也会涵盖SQLite 数据库引擎和新的PDO 接口。
第9 章,图像
示范如何用PHP 创建和修改不同格式的图像文件。
第10 章,PDF
解释如何从PHP 程序创建动态的PDF 文件。
第11 章,XML
介绍PHP 更新的扩展,用来生成和解析XML 数据。
第12 章,安全
为程序员创建安全的脚本提供有价值的建议和引导。你会了解编程技术的最佳实践,帮你避免会带来灾难的错误。
第13 章,应用技术
讲述大多数PHP 程序员最终都会用到的高级技术,介绍错误处理和性能调优。
第14 章,不同平台的 PHP
讲解Windows 端PHP 的技巧和陷阱,也会讲到Windows 上独特的 COM 特性。
第15 章,网页服务
提供用PHP 创建现代网页服务API 的技术,和连接其他系统的API。
第16 章,调试PHP
讲述调试PHP 代码的技术和如何编写可调试的PHP 代码。
第17 章,日期和时间
讲述PHP 处理日期和时间的内建类。
附录A
PHP 所有核心函数的快速参考。
本书约定
本书使用如下的印刷约定:
斜体(Italic)
表示新的术语、URL、邮件地址、文件名和文件扩展名。
等宽字体(Constant width)
用来表示程序代码,也会在一个普通段落中用来引用变量或者函数名、数据库、数据类型、环境变量、表达式以及关键字。
等宽粗体(Constant width bold)
表示命令或者用户必须正确输入的文本。
等宽斜体(Constant width italic)
用户必须替换为自己的值或者依据上下文的值的文本。
这个图标表示提示、建议或一般性标注。
这个图标表示警告或注意。
中文版书中切口以“ ”表示原书页码,便于读者与原英文版图书对照阅读,本书的索引中所列的页码为原英文版页码。