第一部分 PHP4基础 3
第1章 PHP4语言简介 3
1.1 动态网页 3
1.2 什么是PHP 4
1.3 为什么选择PHP 5
1.4 PHP的历史与发展前景 7
1.5 什么是Zend 8
1.6 PHP v4.0的新特性 10
1.7 编写第一个程序 15
1.8 总结 16
第2章 PHP4安装与设定 17
2.1 安装PHP前的准备 17
2.2.1 安装MySQL数据库 18
2.2 Linux操作系统上的安装 18
2.2.2 安装Oracle8.1.6 R2 for linux 19
2.2.3 带PHP模块的Apache快速设定及安装 21
2.2.4 安装GD库 23
2.3 Windows操作系统上的安装 24
2.3.1 MySQL在Windows操作系统下的安装 25
2.3.2 PHP在Windows操作系统下的安装 25
2.4 如何处理安装过程中所出现的问题 26
2.5 总结 26
第3章 PHP4的数据类型、运算符和表达式 28
3.1 数据类型 28
3.1.1 整型 29
3.1.2 浮点型 29
3.1.3 字符串 29
3.1.4 数组 32
3.1.6 布尔值 35
3.2 常量 35
3.1.5 对象 35
3.3 变量 37
3.3.1 变量的类型 38
3.3.2 变量的命名 38
3.3.3 变量的赋值 39
3.3.4 变量替换 39
3.3.5 全局变量与局部变量 41
3.3.6 静态变量 42
3.3.7 动态变量 43
3.3.9 变量类型的获取 45
3.4 运算符 45
3.3.8 外部变量 45
3.4.1 算术运算符 46
3.4.2 字符串运算符 47
3.4.3 赋值运算符 48
3.4.4 位运算符 48
3.4.5 逻辑运算符 49
3.4.6 其他运算符 49
3.5 PHP的表达式 50
3.5.1 简单表达式 50
3.5.2 有副作用的简单表达式 50
3.5.3 复杂表达式 51
3.6 总结 51
第4章 PHP4的基本语句 52
4.1 PHP语句 52
4.2.3 赋值语句 53
4.2.2 执行语句 53
4.2.1 非执行语句 53
4.2 六种类型语句 53
4.2.4 判断语句 54
4.2.5 循环语句 58
4.2.6 跳转语句 64
4.3 总 结 69
第5章 PHP4函数 70
5.1 函数的概念 70
5.3 函数返回值 72
5.4 向函数传递参数 74
5.4.1 给函数赋予缺省值 76
5.4.2 控制变量的作用域 76
5.5 嵌套函数调用 77
5.6 递归函数 78
5.7 总结 82
第二部分 PHP4高级开发 85
第6章 PHP4程序的调试 85
6.1 PHP4程序编制 85
6.1.1 Windows下的开发环境 85
6.1.2 Linux下的开发环境 87
6.2 PHP4程序调试 90
6.2.1 PHP4程序的调试过程 90
6.2.2 常见错误分析 92
第7章 PHP4应用集锦 95
7.1 访客计数器程序 95
7.1.1 基于文件的计数器 95
7.1.2 基于数据库的计数器 98
7.2 用户登录管理 103
7.2.1 设计初步 103
7.2.2 用户登录管理的具体实现 106
7.3.1 文件上传的简单例子 115
7.3 文件上传程序 115
7.3.2 上传多个文件 117
7.3.3 使用HTTP的PUT命令上传文件 119
7.4 PHP4中session的使用 122
7.5 利用PHP生成图形 124
7.5.1 页面按钮 125
7.5.2 在动态窗口中生成图形 129
7.6 邮件列表 145
7.7 动态新闻发布程序 158
7.8 利用header()函数实现页面重定向 161
7.9 站点推荐表单 163
7.10 基于Web的MySQL数据库管理 165
7.11 总结 167
8.1.1 软件开发周期 168
第8章 PHP4面向对象的程序设计 168
8.1 软件工程 168
8.1.2 软件工程的目标和原则 169
8.1.3 从结构化到OOP 169
8.1.4 再谈面向对象 170
8.2 PHP中的对象和类的关系 171
8.3 类的定义 171
8.3.1 创建一个对象 173
8.3.2 继承 173
8.3.3 构造 174
8.3.4 抽象 175
8.3.5 重载 176
8.3.6 多态 177
8.4 利用PHP对象来定制HTML模块 177
8.5 总结 184
第9章 PHP4高级应用 185
9.1 与Oracle数据库进行通信 185
9.1.1 编写留言簿 187
9.1.2 用PHP执行Oracle存储过程示例 199
9.2 用PHP发送带附件的邮件 200
9.2.1 电子邮件的基础 200
9.2.2 电子邮件及附件进行编码 202
9.2.3 使用Soket发送电子邮件 209
9.2.4 POP3接收邮件 217
9.3 动态图形的实现 222
9.4 时刻表程序 228
9.5 将文件上载入数据库程序 233
9.6 无闪烁聊天室程序 239
9.6.1 头包含模块 241
9.6.2 显示模块 249
9.6.3 聊天记录模块 250
9.6.4 发送数据模块 254
9.6.5 登录检出模块 258
9.6.6 管理模块 261
9.7 引用外部程序 264
9.7.1 使用PHP4调用JavaBean 264
9.7.2 使用PHP4调用COM组件 265
9.8 网上超市程序 267
第10章 PHPLIB的使用 269
10.1 概述 269
10.1.1 PHPLIB、Web服务器和数据库系统之间的关系 270
10.1.2 PHPLIB的工作环境 270
10.2.1 定制注册界面 271
10.2.2 定制许可级别 271
10.2 PHPLIB核心功能的应用 271
10.2.3 创建新的用户 272
10.2.4 创建一个没有密码保护的页面 273
10.2.5 生成保护功能 273
10.2.6 一些注意事项 274
10.3 PHPLIB中的类 275
10.3.1 关于PHPLIB中的类 275
10.3.2 如何定制PHPLIB 276
10.3.3 PHPLIB中的HTML widgets 279
10.4 安装PHPLIB 284
C.5.1 日期与时间函数库 285
10.4.1 准备工作 285
10.4.2 安装与调试 286
10.5 对PHPLIB的进一步调试 289
10.6 总结 293
第11章 扩展PHP4 294
11.1 扩展PHP4 294
11.2 扩展可能性 295
11.3 源代码资源布局 296
11.4 PHP的自动构建系统 299
11.5 编译模块 301
11.6 使用扩展程序 304
11.7 总结 305
参考文献 306
第三部分 附录 309
附录A 安装PHP Conifigure选项 309
附录B PHP文件启动配置 314
附录C PHP4函数一览表 323
C.1 数据函数 323
C.1.1 字符串处理函数 323
C.1.2 变量处理函数 331
C.1.3 数组处理函数 333
C.1.5 字符串分析函数 337
C.1.4 拼写检查函数 337
C.1.6 URI字符串处理函数库 338
C.1.7 Perl字符串对比函数 339
C.1.8 mcrypt编码函数库 340
C.1.9 mhash加密函数库 342
C. 2 数学函数 343
C.2.1 数学运算函数 343
C.2.2 高精度运算函数 348
C. 3 文件函数 350
C.3.1 基本文件函数 350
C.3.2 PDF格式文件函数库 360
C.3.3 FDF函数库 371
C.3.4 压缩文件函数 373
C.3.5 目录管理函数库 375
C.4图形处理函数 376
C.5 时间函数 385
C.5.2 历法函数 387
C.6 PHP系统函数 389
C.6.1 PHP选项及相关信息函数 389
C.6.2 程序执行功能函数 393
C.6.3 动态连接函数 394
C.6.4 Session函数 394
C.6.5 GNU记录函数库 396
C. 7 网络函数 396
C.7.1 基本网络函数 396
C.7.3 Hyperwave服务器函数 399
C.7.2 APACHE服务器函数 399
C.7.4 HTTP相关函数 408
C.7.5 FTP文件传输函数 409
C.7.6 PHP电子邮件函数 412
C.7.7 IMAP电子邮件系统函数库 412
C.7.8 Vmailmgr邮件处理函数库 421
C.7.9 XML解释函数 422
C. 7.10 SNMP网管函数 426
C.7.11 LDAP目录协议函数库 427
C.7.12 NIS函数 432
C.7.13 WDDX函数库 434
C. 8 数据库函数 435
C.8.1 MySQL数据库函数 435
C.8.2 mSQL数据库函数库 441
C.8.3 SQL Server数据库函数 448
C.8.4 Oracle8数据库函数库 451
C.8.5 Oracle数据库函数 454
C.8.6 ODBC数据库连接函数 458
C.8.7 Sybase数据库函数 462
C.8.8 InterBase数据库函数 465
C.8.9 Informix数据库函数 467
C.8.10 dBase数据库函数 475
C.8.11 Adabas D数据库函数 477
C.8.12 DBA数据库函数 479
C.8.13 dbm数据库函数 482
C.8.14 filePro数据库函数 484
C.8.15 PostgreSQL数据库函数 485
C.8.16 Solid数据库函数 490
C.9 其他函数 492