轻松学PHP
2013-5
电子工业出版社
张昆
本书由浅入深,全面、系统地介绍了PHP开发技术。本书最大的特色就是提供了大量的插图,一改过去编程书籍枯燥乏味的文字讲解,利用各种说明插图和运行结果示意图,生动形象地再现了PHP开发需要的基础知识,使读者能够轻松地掌握学习内容。另外,作者专门为每一章编写了一些习题,以便读者对该章的学习水平进行检测。本书还录制了大量的配套教学视频,这些视频和书中的实例源代码一起收录于本书的配书光盘中。
本书共分4篇。第1篇概述篇主要介绍PHP历史、动态网站、前台技术、后台技术、集成开发环境的安装过程及第一个PHP程序等知识;第2篇基础语法篇主要介绍基本语法、语句结构、函数和数组等内容;第3篇高级语法篇介绍面向对象程序设计、PHP的错误和异常处理、字符串处理和正则表达式及一些常用的处理函数等技术;第4篇应用篇详细介绍了图形图像处理、数据库基础及Cookie与Session技术等方面的知识,以提高读者实战水平。
第1篇 概述篇
第1 章 PHP概述 2
1.1 动态网站技术 2
1.1.1 什么是动态网站 2
1.1.2 前台技术 3
1.1.3 后台技术 5
1.2 构建PHP环境 6
1.2.1 PHP开发环境 6
1.2.2 XAMPP 7
1.3 第一个程序Hello World 9
1.4 小结 11
1.5 本章习题 11
第2篇 基础语法篇
第2 章 PHP基本语法 14
2.1 二进制 14
2.1.1 二进制数的表示 14
2.1.2 二进制数的转换 15
2.2 数据类型 16
2.2.1 整型 17
2.2.2 浮点型 20
2.2.3 字符串型 22
2.2.4 PHP的其他数据类型 24
2.3 变量 25
2.3.1 变量名的命名规则 25
2.3.2 定义变量 26
2.3.3 PHP预定义变量 27
2.4 常量 27
2.4.1 什么是常量 28
2.4.2 PHP预定义常量 28
2.5 赋值——最基本的运算 29
2.5.1 变量的赋值 29
2.5.2 常量初始化 31
2.6 更多的运算符 32
2.6.1 算术运算符 32
2.6.2 其他运算符 35
2.6.3 运算符的优先级 35
2.7 小结 35
2.8 本章习题 35
第3 章 语句结构 37
3.1 语句 37
3.1.1 什么是语句 37
3.1.2 语句块 37
3.1.3 语句的执行流程——顺序执行 38
3.2 条件的构成 39
3.2.1 关系运算 39
3.2.2 逻辑运算 40
3.3 分支结构 42
3.3.1 if语句 43
3.3.2 if…else语句 44
3.3.3 if…elseif…else语句 45
3.3.4 switch语句 46
3.3.5 分支结构的嵌套 50
3.4 循环结构 50
3.4.1 while语句 51
3.4.2 do…while语句 52
3.4.3 for循环语句 54
3.4.4 循环结构的嵌套 56
3.4.5 跳转语句 57
3.5 小结 61
3.6 本章习题 61
第4 章 函数 63
4.1 为什么使用函数 63
4.2 使用函数 64
4.2.1 定义和调用函数 65
4.2.2 函数的参数 66
4.2.3 函数参数的传递 69
4.2.4 函数中的变量 72
4.2.5 函数的返回值 77
4.3 函数的其他使用方法 79
4.3.1 函数的引用返回 79
4.3.2 可变函数 80
4.3.3 匿名函数 80
4.3.4 递归函数 81
4.4 系统函数 82
4.5 小结 83
4.6 本章习题 83
第5 章 数组 85
5.1 数组概述 85
5.1.1 为什么使用数组 85
5.1.2 索引数组 86
5.1.3 关联数组 87
5.2 初始化数组 87
5.2.1 直接赋值初始化索引数组 87
5.2.2 直接赋值初始化数组的特性 88
5.2.3 直接赋值初始化关联数组 91
5.2.4 使用array()初始化数组 92
5.3 数组的类型 93
5.3.1 一维数组 93
5.3.2 多维数组 95
5.4 数组的遍历 99
5.4.1 使用for循环遍历数组 99
5.4.2 使用foreach遍历数组 103
5.4.3 使用each()、list()和while循环联合遍历数组 105
5.5 数组内部指针控制函数 111
5.6 PHP中的预定义数组 113
5.7 数组的相关处理函数 114
5.8 小结 115
5.9 本章习题 115
第3篇 高级语法篇
第6 章 面向对象程序设计 118
6.1 面向对象概述 118
6.1.1 类与对象的关系 118
6.1.2 面向对象程序设计 119
6.2 创建一个类 119
6.2.1 创建类 120
6.2.2 实例化对象 120
6.3 成员属性 121
6.3.1 成员属性概述 121
6.3.2 访问成员属性 123
6.4 成员方法 124
6.4.1 成员方法概述 124
6.4.2 访问成员方法 125
6.4.3 $this关键字 126
6.4.4 构造方法 127
6.4.5 析构方法 129
6.5 封装性 131
6.5.1 封装性的含义 131
6.5.2 访问控制关键字public、protected、private 132
6.6 继承性 136
6.6.1 继承概述 136
6.6.2 继承public成员 137
6.6.3 继承protected成员 138
6.6.4 private成员 139
6.6.5 继承的扩展 140
6.7 抽象类和接口 141
6.7.1 抽象类和抽象方法 141
6.7.2 接口 144
6.8 多态性 147
6.9 静态成员 149
6.9.1 静态成员属性 149
6.9.2 静态成员方法 151
6.10 常见关键字和魔术方法 152
6.10.1 常用关键字 152
6.10.2 常用魔术方法 157
6.11 小结 162
6.12 本章习题 162
第7 章 PHP的错误和异常处理 163
7.1 错误类型 163
7.1.1 语法错误 163
7.1.2 执行时错误 164
7.1.3 逻辑错误 164
7.2 异常产生 165
7.3 错误日志 168
7.3.1 使用指定的文件记录错误报告日志 168
7.3.2 日志信息记录到操作系统日志 170
7.4 异常处理 173
7.4.1 异常处理实现 173
7.4.2 扩展PHP内置异常处理类 174
7.4.3 捕获多个异常 176
7.5 小结 177
7.6 本章习题 178
第8 章 字符串处理和正则表达式 179
8.1 常用的字符串输出函数 179
8.1.1 echo()函数和print()函数 179
8.1.2 die()函数 181
8.1.3 printf()函数和sprintf()函数 182
8.2 常用的字符串格式化函数 185
8.2.1 删除和填补字符函数 185
8.2.2 转换大小写函数 188
8.2.3 HTML相关字符串格式化函数 189
8.2.4 其他字符串格式化函数 194
8.3 常用的字符串比较函数 197
8.3.1 按照字节ASCII值进行比较 197
8.3.2 strnatcmp()函数和strnatcasecmp()函数 198
8.3.3 strncmp()函数和strncasecmp()函数 199
8.4 正则表达式 200
8.4.1 正则表达式的语法 200
8.4.2 定界符和原子 200
8.4.3 元字符 201
8.5 正则表达式函数 207
8.5.1 字符串匹配与查找 208
8.5.2 替换字符串 217
8.5.3 分割和连接字符串 223
8.6 小结 229
8.7 本章习题 229
第9 章 PHP常用函数 231
9.1 时间和日期处理函数 231
9.1.1 UNIX时间戳 231
9.1.2 获取时间 234
9.1.3 日期和时间格式输出 237
9.1.4 使用date_default_timezone_set()设置默认时区 240
9.1.5 使用microtime()计算程序执行时间 241
9.2 数学函数 242
9.2.1 进制间的转换 242
9.2.2 生成随机数 244
9.2.3 近似数处理函数 246
9.2.4 查找最大值和最小值 247
9.2.5 数学计算 250
9.2.6 数值判断 251
9.3 小结 252
9.4 本章习题 252
第10 章 文件系统 255
10.1 文件处理 255
10.1.1 打开和关闭文件 255
10.1.2 文件类型 261
10.1.3 文件属性 262
10.1.4 读/写文件 265
10.1.5 操作文件 274
10.2 目录处理 275
10.2.1 打开和关闭目录 275
10.2.2 浏览目录 276
10.2.3 操作目录 278
10.3 文件处理的高级应用 280
10.3.1 访问远程文件 280
10.3.2 文件指针 281
10.3.3 文件锁定 282
10.4 文件上传 283
10.4.1 配置php.ini文件 283
10.4.2 认识预定义变量$_FILES 284
10.4.3 单文件上传 284
10.4.4 多文件上传 286
10.5 小结 288
10.6 本章习题 288
第4篇 应用篇
第11 章 图形图像处理 290
11.1 加载GD库 290
11.2 创建图像 291
11.2.1 创建画布 291
11.2.2 输出图像 293
11.2.3 释放资源 297
11.2.4 设置颜色 298
11.2.5 绘制图像 300
11.2.6 在图像上绘制文字 310
11.3 通过GD库生成验证码 312
11.4 小结 313
11.5 本章习题 314
第12 章 MySQL数据库基础 315
12.1 MySQL基础 315
12.1.1 MySQL概述 315
12.1.2 启动与停止服务 316
12.1.3 连接与断开MySQL服务器 316
12.2 MySQL数据库操作 318
12.2.1 创建数据库 318
12.2.2 查看数据库 319
12.2.3 选择数据库 319
12.2.4 删除数据库 320
12.3 数据表设计 321
12.3.1 数据表 321
12.3.2 MySQL中的数据类型 321
12.3.3 数据字段属性 322
12.3.4 创建和查看数据表 323
12.3.5 查看表结构 325
12.3.6 修改表结构 327
12.3.7 重命名表 328
12.3.8 删除表 328
12.4 MySQL语句操作 329
12.4.1 插入记录 329
12.4.2 查询数据库记录 330
12.4.3 修改记录 332
12.4.4 删除记录 335
12.5 数据库备份与恢复 336
12.5.1 数据库备份 336
12.5.2 数据库恢复 337
12.6 PHP操作MySQL数据库 338
12.6.1 访问数据库的一般步骤 338
12.6.2 连接与选择数据库 339
12.6.3 对数据库进行操作 341
12.6.4 断开与数据库的连接 345
12.7 小结 346
12.8 本章习题 346
第13 章 Cookie与Session技术 349
13.1 Cookie技术 349
13.1.1 创建Cookie 349
13.1.2 读取Cookie 351
13.1.3 删除Cookie 352
13.1.4 Cookie的生命周期 354
13.2 Session技术 354
13.2.1 Session简介 354
13.2.2 Session控制 354
13.2.3 传递Session ID 357
13.3 小结 359
13.4 本章习题 359