1、 高等职业院校教学改革创新示范教材网络开发系列 PHP 网络编程 马述清 郭天娇 马玉萍 编著 内 容 简 介 本书从搭建 PHP 应用程序开发环境开始,首先介绍了 PHP 语言的编程基础知识、常用技巧以及与一般 Web 对象的操作,然后介绍了 PHP 与数据库的交互操作方法,并给出了具体的应用实例。本书比较详细地讲解了 PHP 在实际开发中的应用,给后续的学习打下了良好的基础。本书内容紧凑、实例丰富、结构严整、从易到难、由浅入深、循序渐进地系统介绍了 PHP 开发Web 应用程序的技术。本书通俗易懂,配备大量的实例,供读者加深巩固所学知识,有助于读者进行开发实践。本书专门为高职高专院校学生所
2、编著,同时不论是对大中专学生,还是对初学 PHP 应用程序的开发人员,都会起到有益的帮助。本书配套的电子课件、源代码等资源,请登录华信教育资源网()免费下载。未经许可,不得以任何方式复制或抄袭本书之部分或全部内容。版权所有,侵权必究。图书在版编目(CIP)数据 PHP 网络编程/马述清,郭天娇,马玉萍编著.北京:电子工业出版社,2014.1 高等职业院校教学改革创新示范教材网络开发系列 ISBN 978-7-121-21928-3 P 马 郭 马 PHP 语言程序设计高等职业教育教材 TP312 中国版本图书馆 CIP 数据核字(2013)第 276135 号 策划编辑:左 雅 责任编辑:左
3、雅 特约编辑:俞凌娣 印 刷:装 订:出版发行:电子工业出版社 北京市海淀区万寿路 173 信箱 邮编 100036 开 本:7871 092 1/16 印张:20.25 字数:518.4 千字 版 次:2014 年 1 月第 1 版 印 次:2019 年 1 月第 3 次印刷 定 价:39.80 元 凡所购买电子工业出版社图书有缺损问题,请向购买书店调换。若书店售缺,请与本社发行部联系,联系及邮购电话:(010)88254888,88258888。质量投诉请发邮件至 ,盗版侵权举报请发邮件至 。本书咨询联系方式:(010)88254580,。前 言 PHP 是一种应用广泛的 Web 应用程序
4、开发平台。相比 ASP,PHP 更专业一些,同时在开发效率、灵活性、安全性、性能方面比 ASP 技术更强。开源的 PHP 经过多年发展,PHP5 开始增强的企业特性,使 PHP 更广泛地被应用于大型网站与系统的建设,使 PHP不再局限于个人小型网站的使用。本书假设读者的开发基础为零,首先从搭建 PHP 的运行和开发环境、创建第一个Web 应用程序的实用技术出发,详细介绍了 PHP 的编程基础知识、常用技巧以及表单等基本 Web 元素的应用。然后以 MySQL 数据库为主,详细介绍了 PHP 与数据库的各种操作方法,并对触发器和存储过程的编写方法进行了详细的介绍,为后续的应用程序开发奠定了坚实的
5、基础。本书具备以下特色:(1)实例丰富。书中所有的知识点都附带了可以运行的 PHP 代码,并包含了详细的注释。在代码的基础上学习,可以为今后的应用打下坚实的基础。(2)细节翔实。本书对 PHP 的各方面知识做了全面的介绍,包括如何配置安装环境、基本语法以及与数据库的连接操作。(3)兼顾实际开发。本书对 PHP 与其他网页元素诸如表单、文件、Cookie 等做了很详细的介绍,还使用了几个完整的实例综合介绍了 PHP 的实际应用。这些极具代表性的实例对读者的实际应用、毕业设计等都具有指导作用。根据大多数开发人员的学习经验,学习 PHP,首先要学习其基础知识与相关的数据库操作,而扩展库和其他相关知识
6、并不是 PHP 的核心功能,可以在需要的时候进行学习。但是,掌握了这些知识,可以更好地领悟 PHP 的精髓。本书也正是按照上面的学习流程进行讲解的,由易到难、由初级到高级,逐步将读者从一名 PHP 的初学者转变成一名精通 PHP 的程序开发人员。对于初学者,本书有以下学习建议,供读者参考。(1)多阅读源代码。网上的很多源代码的设计思想与编程方法有很好的利用价值,在掌握了一定 PHP 基础知识后,阅读一些优秀的代码,可以很快地提高自身的水平。(2)多练习编写源代码。本书提供了大量的范例,读者在阅读后根据自己的理解进行编写和调试,可以获得比单纯阅读更多的收获。(3)养成良好的编程习惯。例如,在代码
7、中适当的位置注释、代码缩进、语句不能过长等。如果在学习的过程中遇到问题,及时提问可以很快获得答案。下面是一些常见的 PHP网站或论坛,很多问题都可以从下面的网站中获得答案。http:/ 的官方网站,发布 PHP 的最新版本和所有的技术手册。http:/ PHP 联盟,包含很多 PHP 方面的教程、文章和代码等。http:/ PHP 网站,是以讨论 PHP 技术及教学为主的技术站点,该网站的一大特色就是其源代码也是公开的。http:/ 研究室,主要从事 PHP5 的研究,该网站提供了很多 PHP5 方面的软件及学习资料。http:/ China,是面向 PHP 使用和爱好者以及与 PHP 有关的
8、单位与个人自愿参加的组织。该网站主要进行PHP的技术性讨论以及发布PHP的最新动态等。http:/ 社区,CSDN 是国内知名的计算机技术讨论社区。其中的 PHP 讨论版提供了很多很好的 PHP 技术资料。在学习 PHP 的过程中,多实践是学习的关键。边阅读边进行代码调试可以有效地掌握 PHP 的知识点,并且及时发现学习中的难点和重点。本书适合以下的读者:本科/高职/中职学生 毕业设计的学生 网页专业设计制作人员 网页制作爱好者 社会培训班学生 本书由吉林工程技术师范学院的马述清、郭天娇、马玉萍编写,其中,马述清编写了第 17 章,郭天娇编写了第 813 章,马玉萍编写了第 1418 章。另外
9、,张增强、雷凤、刘桂珍、王凯迪、张昆、赵桂芹、鲍洁、张友、李亚伟、王小龙和张金霞等也参与了本书的部分代码编写、资料收集、校对、测试等工作。本书内容翔实,结构紧凑,覆盖知识面广泛。由于编写时间较为仓促,书中难免会有疏漏和不足之处,恳请广大读者提出宝贵意见,以便我们在下一个版本中修订改进。编 者 2014 年 1 月 第 1 章 PHP 开发环境搭建/1 1.1 PHP 简介/1 1.1.1 PHP 语言发展简史/2 1.1.2 PHP 发展现状与展望/2 1.1.3 PHP语言的优势对比/3 1.1.4 学习提示/3 1.2 PHP 的应用范围及案例/4 1.2.1 PHP 可以做什么/4 1.
10、2.2 PHP 擅长的领域及产 品介绍/4 1.2.3 PHP 不适合做什么/5 1.2.4 其他案例/5 1.3 PHP 的“Hello,world”预览/5 1.3.1 第一个 PHP 程序 “Hello,world”/5 1.3.2 学习 PHP 该准备哪 些软件/7 1.3.3 相关知识领域介绍/8 1.4 程序运行环境的搭建/9 1.4.1 Apache 简介/9 1.4.2 安装 Apache 与 PHP/9 1.4.3 使用 phpinfo()确认 Apache 与 PHP 的 安装成功/11 1.4.4 Apache的启动与关闭/12 1.4.5 Apache 的配置文件 ht
11、tpd.conf 与.htaccess 简介/12 1.4.6 PHP 的配置文件 php.ini 简介/12 1.4.7 PHP常用参数的配置/13 1.5 几种综合网络服务器系统的 安装/13 1.5.1 XAMPP/14 1.5.2 WAMP/15 1.5.3 Appserv/16 1.6 几种开发工具简介/17 1.6.1 Vi 及 Vim/17 1.6.2 Eclipse+PHPEclipse 插件/18 1.6.3 UltraEdit/18 1.6.4 EditPlus/19 1.6.5 支持PHP的IDE 环境/19 1.7 小结/20 第 2 章 PHP 基础语法/21 2.1
12、 语言构成与工作原理/21 2.2 常量与变量/22 2.2.1 常量的定义/22 2.2.2 变量的定义/23 2.2.3 变量的作用域/24 2.2.4 动态变量/26 2.3 运算符和关键字/26 2.4 流程控制语法/27 2.4.1 程序控制语句简介/27 2.4.2 条件控制语句/27 2.4.3 循环控制语句/31 2.4.4 转移控制语句/32 VI PHP网络编程 2.5 表达式/33 2.5.1 表达式的分类/33 2.5.2 算术操作表达式/34 2.5.3 字符串操作表达式/35 2.5.4 逻辑操作表达式/36 2.5.5 比较操作表达式/36 2.5.6 位操作表达
13、式/38 2.5.7 运算符的优先级/38 2.6 特殊的全局变量/39 2.7 文件包含/40 2.7.1 使用 require 和 require_once 语句 进行文件包含/40 2.7.2 使用 include 与 include_once 语句 进行文件包含/42 2.8 小结/43 第 3 章 PHP 数据类型与操作/44 3.1 PHP 的数据类型/44 3.1.1 标量数据类型/44 3.1.2 合成数据类型/48 3.1.3 特殊的数据类型/48 3.1.4 数据类型的获得与验证/49 3.2 数据类型间的转换/51 3.2.1 转换成整型/51 3.2.2 转换成浮点型/
14、52 3.2.3 转换成字符串型/53 3.2.4 转换成布尔型/54 3.2.5 转换成数组/54 3.2.6 转换成对象/55 3.2.7 使用函数进行数据 类型的强制转换/55 3.3 小结/56 第 4 章 函数处理与数据引用/57 4.1 函数的定义与使用/57 4.1.1 函数的调用/57 4.1.2 用户自定义函数的编写/58 4.2 PHP 常用函数/59 4.2.1 获得日期时间信息 函数 getdate/59 4.2.2 获得当前时间函数 gettimeofday/60 4.2.3 日期验证函数 checkdate/61 4.2.4 格式化本地时间日期 函数 date/61
15、 4.2.5 获得本地化时间戳 函数 mktime/63 4.2.6 输出控制函数 flush/64 4.2.7 变量检测函数 isset 与 变量释放函数 unset/65 4.2.8 随机函数rand 与srand/65 4.3 关于引用的解释/66 4.3.1 对变量的引用/66 4.3.2 对函数的引用/67 4.3.3 引用的释放/67 4.4 小结/68 第 5 章 PHP 中类的应用/69 5.1 PHP 中面向对象程序设计的 应用/69 5.1.1 类简介/70 5.1.2 类的信息封装/70 5.1.3 静态类/70 5.2 创建一个简单类/71 5.3 PHP5 与 PHP
16、4 的差异/71 5.4 定义属性和方法/72 5.4.1 属性与方法的定义/72 5.4.2 传统的构造函数/72 5.4.3 PHP 类中的一些特殊 方法/73 5.5 类的引用、扩展与继承/75 5.5.1 类的引用/75 5.5.2 类的扩展与继承/75 VII 目 录 5.6 操作与调用/77 5.6.1 静态类的调用/77 5.6.2 实例类型判断方法 instanceof/77 5.6.3 对象的克隆/77 5.7 一些设计观念/80 5.7.1 策略模式(Strategy Pattern)/80 5.7.2 单例模式(Singleton Pattern)/81 5.7.3 工厂模式(Factory Pattern)/82 5.8 接口与抽象类/86 5.8.1 接口的定义/86 5.8.2 单一接口的实现/86 5.8.3 多重接口的实现/87 5.8.4 抽象类/88 5.9 小结/90 第 6 章 文件系统与文本数据 操作/91 6.1 PHP 中的目录操作/91 6.1.1 打开目录/91 6.1.2 关闭目录/92 6.1.3 读取目录中的文件/92 6.1.4