第1章 PHP概述 1
1.1 PHP简介 2
1.2 PHP 5的新变化 3
第2章 PHP的基本语法 9
2.1 PHP编程基础 10
2.1.1 PHP标记 10
2.1.2 注释 11
2.1.3 包含文件 11
2.2 常数 12
2.2.1 内置常数 12
2.2.2 自定义常数 13
2.3 变量 14
2.3.1 变量 14
2.3.2 数据类型 15
2.3.3 变量类型转换 22
2.3.4 变量的作用域 23
2.3.5 静态变量 24
2.3.6 预定义变量 25
2.4 运算符 27
2.4.1 算术运算符 27
2.4.2 关系运算符 29
2.4.3 逻辑与位运算符 30
2.4.4 赋值运算符 35
2.4.5 错误控制运算符 37
2.4.6 三元运算符 37
2.4.7 运算符的优先级 38
2.5 条件语句 39
2.5.1 条件语句 39
2.5.2 循环语句 43
2.6 上机实训 47
2.7 本章习题 47
第3章 数组 51
3.1 创建数组 52
3.1.1 创建数组 52
3.1.2 多维数组 56
3.2 数组操作 57
3.2.1 遍历数组 57
3.2.2 合并数组 59
3.2.3 数组排序 62
3.3 上机实训 64
3.4 本章习题 64
第4章 函数 67
4.1 编码 68
4.1.1 编码 68
4.1.2 PHP字符集的处理 69
4.2 字符串的操作 70
4.2.1 获取字符串长度 70
4.2.2 字符串的格式化 71
4.2.3 字符串的比较 76
4.2.4 字符串的查找 77
4.2.5 字符串的截取 78
4.3 案例:字符串查找 80
4.3.1 界面 80
4.3.2 处理查找 81
4.3.3 查找函数 82
4.4 正则表达式 87
4.4.1 正则表达式的语法 87
4.4.2 正则表达式例子 89
4.5 案例:长度单位换算 93
4.5.1 界面 94
4.5.2 转换代码 95
4.6 案例:数在不同进制间转换 98
4.6.1 转换界面 98
4.6.2 获取转换的进制 100
4.6.3 检查数值 100
4.6.4 制数转换 101
4.7 日期和时间 103
4.7.1 时区设置 103
4.7.2 获取日期和时间 104
4.8 案例:日历 110
4.8.1 获取当前日期 111
4.8.2 输出表头 112
4.8.3 产生当前月份的天数 113
4.8.4 输出日期 113
4.8.5 获取节日 115
4.9 案例:获取服务器IP地址 116
4.9.1 界面 116
4.9.2 查询指定网址的IP地址 117
4.10 上机实训 119
4.11 本章习题 119
第5章 文件与目录操作 123
5.1 文件操作 124
5.1.1 打开、关闭文件 124
5.1.2 读文件 126
5.1.3 写文件 129
5.1.4 操作文件的其他函数 131
5.2 解析网页实例 131
5.2.1 解析网页 131
5.2.2 操作文件 140
5.3 目录操作 144
5.3.1 浏览目录 145
5.3.2 创建目录 147
5.3.3 复制目录 152
5.3.4 删除目录 159
5.4 上机实训 162
5.5 本章习题 162
第6章 面向对象 163
6.1 类 164
6.1.1 定义类 164
6.1.2 访问属性和方法的方式 165
6.1.3 构造方法与析构方法 167
6.1.4 类静态属性和方法 170
6.1.5 类常量 173
6.2 继承 174
6.2.1 定义继承 174
6.2.2 继承的访问方式 177
6.2.3 parent和self 183
6.3 复制 184
6.4 类的高级特性 188
6.4.1 抽象类 188
6.4.2 特殊方法 190
6.5 接口(Interfaces) 197
6.6 上机实训 197
6.7 本章习题 198
第7章 错误处理 201
7.1 错误信息 202
7.1.1 错误类型 202
7.1.2 配置PHP.ini中有关错误的信息 203
7.1.3 有关函数 204
7.2 错误类型 210
7.2.1 语法错误 211
7.2.2 运行时错误 214
7.2.3 逻辑错误 222
7.3 异常处理 223
7.3.1 异常 223
7.3.2 Exception 224
7.4 上机实训 228
7.5 本章习题 228
第8章 Web技术 231
8.1 HTTP基础 232
8.1.1 表单 232
8.1.2 GET 235
8.1.3 POST 236
8.1.4 获取表单数据 237
8.2 上机实训 239
8.3 本章习题 239
第9章 PHP与 XML 241
9.1 XML文档 242
9.1.1 XML简介 242
9.1.2 XML基本语法规则 243
9.1.3 XML的例子 244
9.2 SAX方式 245
9.2.1 解析XML文档的过程 245
9.2.2 解析XML文档的例子 248
9.2.3 DOM 251
9.3 上机实训 256
9.4 本章习题 256
第10章 JavaScript编程基础 259
10.1 JavaScript编程基础 260
10.1.1 在HTML中嵌入JavaScript 260
10.1.2 变量 261
10.2 运算符 262
10.2.1 算术运算符 263
10.2.2 关系运算符 264
10.2.3 逻辑运算符和位运算符 265
10.2.4 赋值运算符 269
10.2.5 其他运算符 270
10.2.6 运算符的优先级 273
10.3 流程控制语句 274
10.3.1 条件语句 274
10.3.2 循环语句 276
10.3.3 函数 277
10.3.4 消息框 280
10.4 对象 281
10.4.1 数组 282
10.4.2 Date 288
10.4.3 Math 290
10.4.4 String 292
10.4.5 自定义对象 294
10.4.6 prototype 296
10.5 DHTML 299
10.5.1 DHTML对象概述 300
10.5.2 DHTML对象 300
10.5.3 DHTML对象的事件 302
10.6 DHTML内置控件 304
10.6.1 内置控件 305
10.6.2 计算器 305
10.6.3 问卷调查示例 308
10.6.4 下拉列表框 313
10.7 倒计时器 315
10.7.1 把时间数字转换成图片 315
10.7.2 显示时间 316
10.7.3 设置计时器 318
10.7.4 启动计时器 318
10.8 检查电子邮件地址 319
10.8.1 界面 319
10.8.2 CheckMailAddress() 320
10.8.3 MatchEmail() 321
10.9 上机实训 323
10.10 本章习题 323
第11章 Ajax 327
11.1 Ajax技术核心 328
11.1.1 Ajax原理 328
11.1.2 Ajax的优势和缺陷 329
11.2 Ajax技术核心 330
11.2.1 XMLHttpRequest对象的创建 330
11.2.2 XMLHttpRequest对象的属性 332
11.2.3 XMLHttpRequest对象的事件 334
11.2.4 XMLHttpRequest对象方法 334
11.2.5 XMLHttpRequest对象使用实例 337
11.3 Ajax框架:prototype框架 343
11.3.1 prototype的常用函数 343
11.3.2 prototype对Ajax的支持——Ajax0Request类 344
11.3.3 Ajax.Updater类 349
11.3.4 Ajax.Responders对象 351
11.3.5 prototype的其他对象 352
11.4 Ajax框架:Sajax包 358
11.4.1 Sajax例子 358
11.4.2 Sajax客户端函数 362
11.4.3 Sajax服务器端的变量和函数 365
11.4.4 Sajax的实现过程 369
11.5 Ajax实例:动态树状菜单 369
11.5.1 使用XMLHttpRequest实现动态树状菜单 370
11.5.2 使用prototype框架实现动态树状菜单 377
11.5.3 使用Sajax框架实现动态树状菜单 379
11.6 上机实训 383
11.7 本章习题 383
第12章 PHP 5与MySQL 385
12.1 MySQL数据库 386
12.1.1 MySQL数据库简介 386
12.1.2 MySQL基本命令 387
12.1.3 多表查询 397
12.1.4 获取记录数目 398
12.1.5 获取列的相关信息 398
12.2 操作MySQL数据库 398
12.2.1 连接数据库 399
12.2.2 提交指定的SQL指令 400
12.2.3 获取查询结果 401
12.2.4 关闭与数据库的连接 407
12.3 上机实训 407
12.4 本章习题 407
第13章 考试系统 411
13.1 系统总体设计 412
13.1.1 系统功能描述 412
13.1.2 系统实现环境 414
13.2 数据库设计 414
13.2.1 总体设计 414
13.2.2 表设计 415
13.2.3 关系设计 422
13.3 通用文件 423
13.4 登录 426
13.4.1 考生登录 427
13.4.2 管理员登录 437
13.5 实现考试功能 441
13.5.1 显示考试信息 442
13.5.2 获取试卷 446
13.5.3 提交答案 451
13.5.4 结束考试 453
13.6 试题录入与修改 456
13.6.1 录入试题 456
13.6.2 修改试题 463
13.7 组卷功能 472
13.7.1 设置试卷结构 473
13.7.2 组卷界面 481
13.7.3 自动组卷 483
13.7.4 人工组卷 488
13.7.5 修改试卷 497
13.8 设置考试课程 502
13.8.1 界面 502
13.8.2 检查输入 503
13.8.3 设置考试时间 506
13.9 设置专业和班级 507
13.9.1 专业管理 508
13.9.2 班级管理 512
13.10 设置考生 519
13.10.1 界面 520
13.10.2 添加学生 523
13.10.3 管理考生 526
13.11 查询成绩 537
13.11.1 界面 537
13.11.2 客户端函数 539
13.11.3 服务器端函数 539
13.12 查询交卷考生 541
13.12.1 客户端函数 542
13.12.2 服务器端函数 542
13.13 小结 544