章 PHP认知与环境搭建 1
1.1 HTTP协议 1
1.1.1 HTTP协议简介 1
1.1.2 URL 1
1.1.3 请求与应答 2
1.2 Web相关技术 2
1.2.1 网站行业的细分 2
1.2.2 B/S架构 3
1.2.3 静态网页与动态网页 3
1.2.4 服务器端动态网页的“3P”技术 4
1.3 Web应用开发的黄金组合―LAMP 5
1.3.1 Linux操作系统 5
1.3.2 Apache服务器 5
1.3.3 MySQL数据库 5
1.3.4 PHP语言 6
1.3.5 从LAMP到WAMP 6
1.4 环境搭建与虚拟主机配置 6
1.4.1 基于XAMPP搭建PHP开发环境 6
1.4.2 基于phpStudy搭建PHP开发环境 12
1.5 编辑器与简单的PHP程序 14
实训任务1 PHP认知与环境搭建 17
第2章 PHP语法基础 19
2.1 程序的结构与编写规范 19
2.1.1 什么是程序 19
2.1.2 程序的结构 20
2.1.3 程序的编写规范 20
2.2 从最简单的程序中学习语法常识 22
2.2.1 任务分析 22
2.2.2 相关知识 22
2.2.3 任务实现 25
2.3 从求圆的周长和面积中学习变量常量 26
2.3.1 任务分析 26
2.3.2 相关知识 26
2.3.3 任务实现 31
2.4 从输出学生信息表中学习数据类型 33
2.4.1 任务分析 33
2.4.2 相关知识 33
2.4.3 任务实现 38
2.5 从四则运算中学习运算符 39
2.5.1 任务分析 39
2.5.2 相关知识 39
2.5.3 任务实现 47
实训任务2 PHP程序基本认知 48
第3章 PHP流程结构 50
3.1 顺序结构 50
3.2 从BMI计算器中学习分支结构 50
3.2.1 任务分析 51
3.2.2 相关知识 51
3.2.3 任务实现 62
3.3 从多名学生的BMI判定中学习循环结构 63
3.3.1 任务分析 63
3.3.2 相关知识 63
3.3.3 任务实现 73
实训任务3 程序逻辑处理 74
第4章 PHP表单交互与会话 79
4.1 HTML表单常用标签 76
4.1.1 表单的定义 76
4.1.2 表单元素 77
4.1.3 表单案例:学生信息登记表单 80
4.2 获取表单数据 81
4.2.1 使用post方法接收学生信息登记表单的数据 81
4.2.2 使用get方法计算长方形面积 83
4.2.3 isset()和empty()函数 85
4.3 从用户登录中学习Session的使用 86
4.3.1 任务分析 86
4.3.2 相关知识 86
4.3.3 任务实现 87
4.4 从用户注销中学习Session的删除 89
4.4.1 任务分析 89
4.4.2 相关知识 90
4.4.3 任务实现 90
4.5 从保存登录时间中学习Cookie 91
4.5.1 任务分析 92
4.5.2 相关知识 92
4.5.3 任务实现 94
实训任务4 PHP表单交互与会话 96
第5章 PHP中的函数 98
5.1 从推算属相案例中学习自定义函数 98
5.1.1 任务分析 98
5.1.2 相关知识 99
5.1.3 任务实现 110
5.2 从防止SQL注入中学习字符串处理函数 111
5.2.1 任务分析 112
5.2.2 相关知识 112
5.2.3 任务实现 128
实训任务5 PHP函数的应用 130
第6章 PHP中的数组 132
6.1 数组的概念 132
6.1.1 什么是数组 132
6.1.2 数组的定义 133
6.2 从统计学生平均成绩中学习数组遍历 138
6.2.1 任务分析 139
6.2.2 相关知识 139
6.2.3 任务实现 141
6.3 从学生成绩排名中学习数组排序 143
6.3.1 任务分析 143
6.3.2 相关知识 143
6.3.3 任务实现 147
6.4 PHP数组的常用函数 150
6.4.1 数组内部的指针函数 150
6.4.2 查找函数 150
6.4.3 其他函数 152
实训任务6 PHP数组的应用 152
第7章 面向对象编程 154
7.1 认识面向对象编程 154
7.1.1 面向过程编程与面向对象编程 154
7.1.2 面向对象编程的特征 155
7.2 从声明Person类中学习类 156
7.2.1 任务分析 156
7.2.2 相关知识 156
7.2.3 任务实现 157
7.3 从实例化Person类中学习对象 158
7.3.1 任务分析 158
7.3.2 相关知识 158
7.3.3 任务实现 159
7.4 从赋值和销毁中学习构造和析构方法 160
7.4.1 任务分析 161
7.4.2 相关知识 161
7.4.3 任务实现 163
7.5 从访问控制中学习封装和继承 164
7.5.1 任务分析 165
7.5.2 相关知识 165
7.5.3 任务实现 176
7.6 从Person类中学习抽象类与接口 177
7.6.1 任务分析 177
7.6.2 相关知识 177
7.6.3 任务实现 182
7.7 从选择中学习多态 182
7.7.1 任务分析 182
7.7.2 相关知识 183
7.7.3 任务实现 184
7.8 关键字和魔术方法的应用 186
7.8.1 final关键字的应用 186
7.8.2 static关键字的应用 187
7.8.3 单态设计模式 189
7.8.4 const关键字的应用 190
7.8.5 instanceof关键字的应用 191
7.8.6 克隆对象 191
7.8.7 类中通用的方法__toString() 193
7.8.8 PHP 7新加入的方法 193
7.8.9 __call()方法的应用 194
7.8.10 自动加载类 196
实训任务7 面向对象基础编程应用 197
第8章 正则表达式 199
8.1 从分割字符串中认识正则表达式 199
8.1.1 任务分析 199
8.1.2 相关知识 200
8.1.3 任务实现 205
8.2 正则表达式案例:验证表单内容 207
8.2.1 任务分析 207
8.2.2 相关知识 207
8.2.3 任务实现 211
实训任务8 正则表达式 213
第9章 PHP中的文件操作 215
9.1 从读写文件中认识简单文件读写函数 215
9.1.1 任务分析 215
9.1.2 相关知识 215
9.1.3 任务实现 217
9.2 从留言板案例中认识带锁读写文件 218
9.2.1 任务分析 218
9.2.2 相关知识 218
9.2.3 任务实现 224
9.3 PHP文件上传案例:上传头像 226
9.3.1 任务分析 226
9.3.2 相关知识 226
9.3.3 任务实现 229
实训任务9 PHP中的文件操作 232
0章 PHP操纵MySQL数据库 233
10.1 MySQL数据库概述 233
10.1.1 MySQL数据库 233
10.1.2 数据库与Web开发 233
10.1.3 PHP与MySQL数据库 234
10.1.4 PHP访问MySQL数据库的流程 234
10.2 从学生管理系统中学习PHP操纵MySQL数据库 235
10.2.1 任务分析 235
10.2.2 相关知识 236
10.2.3 任务实现 247
实训任务10 PHP操作MySQL数据库 253
1章 PHP中的图形图像 255
11.1 处理图像前的准备 255
11.1.1 加载GD库 255
11.1.2 PHP图像坐标系 256
11.1.3 指定适合的MIME类型 256
11.2 图像的基本操作 257
11.2.1 创建画布 257
11.2.2 输出图像 258
11.2.3 定义颜色 258
11.2.4 释放图像资源 258
11.3 绘制基本图形案例:绘制围棋棋盘 260
11.3.1 任务分析 260
11.3.2 相关知识 261
11.3.3 任务实现 272
11.4 绘制文本案例:生成验证码 274
11.4.1 任务分析 274
11.4.2 相关知识 274
11.4.3 任务实现 278
实训任务11 使用PHP处理图形图像 279
2章 综合实例:通信录管理系统 281
12.1 案例展示 281
12.2 需求分析 282
12.3 案例实现 283
12.3.1 准备工作 283
12.3.2 数据库设计 284
12.3.3 用户登录 285
12.3.4 验证码 287
12.3.5 用户注册 289
12.3.6 用户信息完善 292
12.3.7 查看联系人信息 294
12.3.8 分页查询 296
12.3.9 添加联系人 298
12.3.10 修改联系人 300
12.3.11 删除联系人 301
12.3.12 用户退出 302
参考文献 303