第1篇 基础篇 2
第1章 PHP概述(自学视频、源程序:配套资源\mr\1\) 2
1.1如何学好PHP 3
1.1.1什么是PHP 3
1.1.2 PHP版本 3
1.1.3 PHP的应用领域 4
1.1.4 PHP5的新特性 4
1.1.5下载PHP及相关软件 5
1.1.6代码编辑工具 6
1.1.7下载PHP用户手册 7
1.2环境的搭建 7
1.2.1 AppServ——Windows版PHP集成化安装包 7
1.2.2 XAMPP——Linux版PHP集成化安装包 10
上机演练 11
1.3 PHP开发环境的关键配置信息 12
1.3.1 Apache服务器的基本配置 12
1.3.2 php.ini文件的基本配置 12
1.4解决PHP的常见配置问题 14
1.4.1解决Apache服务器端口冲突 15
1.4.2设置PHP的系统当前时间 15
1.4.3增加PHP扩展模块 15
本章摘要 15
习题 16
实战模拟 16
第2章 PHP基础(自学视频、源程序:配套资源\mr\2\) 18
2.1 PHP工作原理 19
2.2 PHP标记 20
上机演练 20
2.3代码注释 21
2.3.1使用PHP注释 21
2.3.2有效使用注释 22
2.4 PHP常量 23
2.4.1声明和使用常量 23
2.4.2预定义常量 24
上机演练 25
2.5 PHP变量 26
2.5.1声明变量 26
2.5.2变量赋值 26
2.5.3变量作用域 28
2.5.4可变变量 29
2.6 PHP数据类型 30
2.6.1标量数据类型 31
2.6.2复合数据类型 34
2.6.3特殊数据类型 35
2.6.4转换数据类型 35
2.6.5检测数据类型 36
上机演练 37
2.7 PHP的运算符 37
2.7.1算术运算符 37
2.7.2字符串运算符 38
2.7.3赋值运算符 38
2.7.4位运算符 39
2.7.5自增或自减运算符 40
2.7.6逻辑运算符 41
2.7.7比较运算符 41
2.7.8三元运算符 43
2.7.9运算符的使用规则 43
上机演练 44
本章摘要 45
习题 45
实战模拟 46
第3章 PHP函数(自学视频、源程序:配套资源\mr\3\) 47
3.1 PHP函数 48
3.1.1定义和调用函数 48
3.1.2在函数间传递参数 48
3.1.3从函数中返回值 50
3.1.4变量函数 50
3.1.5对函数的引用 51
3.1.6取消引用 52
上机演练 52
3.2 PHP变量函数库 52
3.3 PHP字符串函数库 53
上机演练 55
3.4 PHP日期时间函数库 56
上机演练 57
3.5 PHP数学函数库 58
上机演练 59
3.6 PHP文件系统函数库 60
上机演练 62
3.7 MySQL函数库 63
上机演练 63
本章摘要 64
习题 64
实战模拟 65
第4章 PHP流程控制语句(自学视频、源程序:配套资源\mr\4\) 67
4.1程序的3种控制结构 68
4.1.1顺序结构 68
4.1.2选择(分支)结构 68
4.1.3循环结构 69
4.2条件控制语句 69
4.2.1 if条件控制语句 69
4.2.2 switch多分支语句 71
上机演练 73
4.3循环控制语句 73
4.3.1 while循环语句 74
4.3.2 do…while循环语句 75
4.3.3 for循环语句 76
4.3.4 foreach循环语句 77
上机演练 79
4.4跳转语句 80
4.4.1 break跳转语句 80
4.4.2 continue跳转语句 81
上机演练 82
4.5包含语句 82
4.5.1 include()语句 82
4.5.2 require()语句 83
4.5.3 include_once()语句 84
4.5.4 require_once()语句 84
4.5.5 include()语句和require()语句的区别 86
上机演练 87
本章摘要 87
习题 87
实战模拟 89
第5章 PHP数组(自学视频、源程序:配套资源\mr\5\) 92
5.1数组概述 93
5.2数组类型 93
5.3声明数组 94
5.3.1用户创建数组 94
5.3.2函数创建数组 95
5.3.3创建二维数组 96
5.4遍历、输出数组 96
5.4.1遍历数组 96
5.4.2输出数组元素 99
5.5 PHP数组函数 100
5.5.1统计数组元素个数 100
5.5.2向数组中添加元素 100
5.5.3获取数组中最后一个元素 101
5.5.4删除数组中重复元素 101
5.5.5获取数组中指定元素的键名 102
5.5.6将数组中元素合成字符串 103
上机演练 103
本章摘要 104
习题 104
实战模拟 105
第6章 Web技术(自学视频、源程序:配套资源\mr\6\) 107
6.1 HTTP基础 108
6.2变量 110
6.3服务器信息 111
上机演练 113
6.4表单处理 114
6.4.1创建表单 114
6.4.2添加表单元素 114
6.4.3方法 119
6.4.4对参数进行自动引号处理 121
6.4.5自处理页面 121
6.4.6粘性表单 123
6.4.7多值参数 124
6.4.8粘性多值参数 125
6.4.9文件上传 127
6.4.10表单验证 130
上机演练 131
6.5设置响应头 132
6.5.1不同的内容类型 133
6.5.2重定向 134
6.5.3设置过期时间 134
6.5.4 HTTP认证 134
6.5.5文件下载 135
上机演练 135
6.6维持状态 137
6.6.1 Cookie 138
6.6.2会话 140
上机演练 145
本章摘要 147
习题 147
实战模拟 148
第7章 MySQL数据库(自学视频、源程序:配套资源\mr\7\) 150
7.1 MySQL概述 151
7.1.1 MySQL的特点 151
7.1.2 SQL和MySQL 151
7.2 MySQL服务器的启动和关闭 152
7.2.1启动MySQL服务器 152
7.2.2连接MySQL服务器 153
7.2.3关闭MySQL服务器 154
7.3操作MySQL数据库 154
7.3.1创建新数据库 154
7.3.2选择指定数据库 155
7.3.3删除指定数据库 155
7.4操作MySQL数据表 156
7.4.1创建一个表 156
7.4.2查看数据表结构 157
7.4.3修改数据表结构 158
7.4.4重命名数据表 159
7.4.5删除指定数据表 160
7.5操作MySQL数据 161
7.5.1向数据表中添加数据(INSERT) 161
7.5.2更新数据表中的数据(UPDATE) 162
7.5.3删除数据表中的数据(DELETE) 163
7.5.4查询数据表中的数据(SELECT) 163
7.6 MySQL数据类型 169
7.6.1数字类型 169
7.6.2字符串类型 170
7.6.3日期和时间数据类型 171
7.7 phpMyAdmin管理MySQL数据库 171
7.7.1管理数据库 171
7.7.2管理数据表 173
7.7.3管理数据记录 175
7.7.4导入和导出数据 177
本章摘要 180
习题 180
实战模拟 181
第8章 PHP数据库编程技术(自学视频、源程序:配套资源\mr\8\) 182
8.1 PHP操作MySQL数据库的步骤 183
8.2 PHP操作MySQL数据库的函数 183
8.2.1 mysql_connect()函数连接MySQL服务器 183
8.2.2 mysql_select_db()函数选择MySQL数据库 184
8.2.3 mysql_query()函数执行SQL语句 184
8.2.4 mysql_fetch_array()函数将结果集返回到数组中 185
8.2.5 mysql_fetch_row()函数从结果集中获取一行作为枚举数组 186
8.2.6 mysql_num_rows()函数获取查询结果集中的记录数 187
8.2.7 mysql_free_result()函数释放内存 188
8.2.8 mysql_close()函数关闭连接 189
上机演练 189
8.3管理MySQL数据库中的数据 190
8.3.1向数据库中添加数据 190
8.3.2浏览数据库中数据 191
8.3.3编辑数据库数据 192
8.3.4删除数据 194
8.3.5批量删除数据 195
上机演练 197
本章摘要 198
习题 198
实战模拟 199
第2篇 技能提高篇 202
第9章 字符串高级处理(自学视频、源程序:配套资源\mr\9\) 202
9.1初识字符串 203
9.2转义、还原字符串 203
9.3截取字符串 204
上机演练 206
9.4分割、合成字符串 206
上机演练 207
9.5替换字符串 208
9.5.1 str_ireplace()函数 208
9.5.2 substr_replace()函数 209
上机演练 209
9.6检索字符串 210
9.6.1 strstr()函数 210
9.6.2 substr_count()函数 211
上机演练 212
9.7去掉字符串首尾空格和特殊字符 212
9.7.1 ltrim()函数 212
9.7.2 rtrim()函数 213
9.7.3 trim()函数 214
上机演练 214
9.8字符串与HTML转换 214
上机演练 217
本章摘要 217
习题 218
实战模拟 218
第10章 日期和时间处理(自学视频、源程序:配套资源\mr\10\) 220
10.1 PHP的时间观念 221
10.1.1在PHP.INI文件中设置时区 221
10.1.2通过date_default_timezone_set函数设置时区 221
上机演练 221
10.2 UNIX时间戳 222
10.2.1获取任意日期、时间的时间戳 222
10.2.2获取当前时间戳 223
10.2.3日期、时间转换为UNIX时间戳 223
上机演练 224
10.3日期和时间处理 224
10.3.1格式化日期和时间 225
10.3.2获取日期和时间信息 226
10.3.3检验日期和时间的有效性 227
上机演练 228
本章摘要 228
习题 228
实战模拟 229
第11章 图形图像处理(自学视频、源程序:配套资源\mr\11\) 231
11.1了解GD2函数库 232
11.2设置GD2函数库 232
11.3常用图像处理技术 233
11.3.1创建画布 233
11.3.2颜色处理 233
11.3.3绘制文字 234
11.3.4输出图像 237
11.3.5销毁图像 238
上机演练 238
11.4运用Jpgraph类库绘制图像 239
11.4.1 Jpgraph类库简介 239
11.4.2 Jpgraph类库的安装 239
11.4.3柱形图分析产品月销售量 240
11.4.4折线图分析网站一天内的访问走势 241
11.4.5 3D饼形图展示各部门不同月份的业绩 243
上机演练 244
本章摘要 245
习题 245
实战模拟 246
第12章 文件、目录处理(自学视频、源程序:配套资源\mr\12\) 250
12.1基本的文件处理 251
12.1.1打开一个文件 251
12.1.2读取文件内容 252
12.1.3向文件中写入数据 257
12.1.4关闭文件指针 258
上机演练 258
12.2目录操作技术 259
12.2.1打开指定目录 259
12.2.2读取目录结构 260
12.2.3关闭目录指针 261
上机演练 261
本章摘要 262
习题 262
实战模拟 263
第13章 面向对象编程(自学视频、源程序:配套资源\mr\13\) 265
13.1一切皆是对象 266
13.1.1什么是类 266
13.1.2对象的由来 266
13.1.3面向对象的特点 267
13.2类的声明 267
13.2.1类的定义 267
13.2.2成员属性 268
13.2.3成员方法 269
上机演练 269
13.3类的实例化 270
13.3.1创建对象 270
13.3.2访问类中成员 271
13.3.3特殊的访问方法——“$this”和“::” 272
13.3.4构造方法和析构方法 273
上机演练 274
13.4面向对象的封装特性 275
13.4.1 public(公共成员) 275
13.4.2 private(私有成员) 275
13.4.3 protected(保护成员) 276
上机演练 277
13.5面向对象的继承特性 278
13.5.1类的继承——extends关键字 278
13.5.2类的继承——parent::关键字 279
13.5.3覆盖父类方法 279
上机演练 280
13.6抽象类和接口 281
13.6.1抽象类 281
13.6.2接口 282
13.7面向对象的多态性 284
13.7.1通过继承实现多态 284
13.7.2通过接口实现多态 285
13.8面向对象的关键字 286
13.8.1 final关键字 286
13.8.2 static关键字——声明静态类成员 286
13.8.3 clone关键字——克隆对象 288
上机演练 289
13.9面向对象的魔术方法 290
13.9.1 _set和_get方法 290
13.9.2 _isset和unset方法 290
13.9.3 _call方法 291
13.9.4 _toString方法 291
13.9.5 _autoload方法 292
上机演练 293
本章摘要 293
习题 294
实战模拟 294
第3篇 高级应用篇 298
第14章 PDO数据库抽象层(自学视频、源程序:配套资源\mr\14\) 298
14.1什么是PDO 299
14.1.1 PDO概述 299
14.1.2 PDO特点 299
14.1.3安装PDO 299
14.2 PDO连接数据库 300
14.2.1 PDO构造函数 300
14.2.2 DSN详解 300
上机演练 301
14.3 PDO中执行SQL语句 302
14.3.1 exec方法 302
14.3.2 query方法 302
14.3.3预处理语句——prepare和execute 304
上机演练 305
14.4 PDO中获取结果集 306
14.4.1 fetch方法 306
14.4.2 fetchAll方法 308
14.4.3 fetchColumn方法 309
上机演练 310
14.5 PDO中捕获SQL语句中的错误 310
14.5.1使用默认模式——PDO::ERRMODE SILENT 310
14.5.2使用警告模式——PDO::ERRMODE WARNING 312
14.5.3使用异常模式——PDO::ERRMODE EXCEPTION 313
14.6 PDO中错误处理 314
14.6.1 errorCode方法 314
14.6.2 errorInfo方法 315
14.7 PDO中事务处理 316
14.8 PDO中存储过程 318
本章摘要 320
习题 320
实战模拟 321
第15章 Smarty模板(自学视频、源程序:配套资源\mr\15\) 322
15.1走进Smarty模板引擎 323
15.1.1 Smarty模板引擎下载 323
15.1.2 Smarty模板引擎安装 324
15.1.3 Smarty模板引擎配置 324
15.1.4 Smarty模板的应用 326
上机演练 327
15.2 Smarty模板设计——静态页处理 327
15.2.1基本语法(注释、函数和属性) 327
15.2.2 Smarty模板设计变量 328
15.2.3变量调节器 329
15.2.4内建函数(动态文件、模板文件的包含和流程控制语句) 330
15.2.5自定义函数 332
15.2.6配置文件 333
上机演练 334
15.3 Smarty程序设计——动态文件操作 335
15.3.1 SMARTY PATH常量 335
15.3.2 Smarty程序设计变量 336
15.3.3 Smarty方法 336
15.3.4 Smarty缓存 337
上机演练 339
本章摘要 340
习题 340
实战模拟 341
第16章 ThinkPHP框架(自学视频、源程序:配套资源\mr\16\) 343
16.1 ThinkPHP简介 344
16.1.1 ThinkPHP框架的特点 344
16.1.2环境要求 344
16.1.3下载ThinkPHP框架 345
16.2 ThinkPHP架构 346
16.2.1 ThinkPHP的目录结构 346
16.2.2自动生成目录 347
16.2.3项目目录部署方案 348
16.2.4命名规范 348
16.2.5项目构建流程 349
16.3 ThinkPHP的配置 351
16.3.1配置格式 352
16.3.2调试配置 352
16.4 ThinkPHP的控制器 353
16.4.1控制器 353
16.4.2跨模块调用 354
16.5 ThinkPHP的模型 358
16.5.1模型的命名 358
16.5.2实例化模型 359
16.5.3属性访问 362
16.5.4连接数据库 363
16.5.5创建数据 366
16.5.6连贯操作 367
16.5.7 CURD操作 368
上机演练 371
16.6 ThinkPHP的视图 373
16.6.1模板定义 374
16.6.2模板赋值 374
16.6.3指定模板文件 374
16.6.4特殊字符串替换 375
上机演练 376
16.7内置ThinkTemplate模板引擎 379
上机演练 381
本章摘要 384
习题 384
实战模拟 385
第17章 PHP的字符编码(自学视频、源程序:配套资源\mr\17\) 386
17.1字符集和编码 387
17.1.1 ISO8859字符集 387
17.1.2 GB2312与GBK字符集 387
17.1.3 Unicode字符集 388
17.1.4 UTF-8编码 388
上机演练 389
17.2 PHP网页的字符编码 389
17.2.1设置编码格式 390
17.2.2转换编码格式 390
17.2.3检测字符串的编码 392
上机演练 393
17.3 PHP开发中的乱码问题 393
17.3.1解决页面中的乱码问题 393
17.3.2数据库中的字符集编码问题 395
17.3.3避免截取中文字符串时出现乱码 396
上机演练 397
本章摘要 397
习题 397
实战模拟 398
第4篇 实战项目篇 400
第18章 明日导航网(PHP+ThinkPHP+MySQL实现)(自学视频、源程序:配套资源\mr\18\) 400
18.1项目设计思路 401
18.1.1功能阐述 401
18.1.2功能结构 401
18.1.3系统预览 401
18.2数据库设计 403
18.2.1数据库设计 403
18.2.2数据表设计 403
18.2.3连接数据库 404
18.3 ThinkPHP架设项目结构 404
18.3.1下载ThinkPHP框架 404
18.3.2自动生成项目目录 405
18.4明日导航前台页面设计 406
18.4.1页面设计概述 406
18.4.2控制器的创建 407
18.4.3视图中应用到的模板标签 409
18.4.4在视图中创建模板文件 411
18.5明日导航后台管理设计 412
18.5.1后台管理概述 412
18.5.2通过系统配置文件存储后台登录数据 413
18.5.3后台管理架构解析 414
18.5.4 ThinkPHP框架中的分页技术 414
18.5.5后台管理视图中应用的模板标签 415
18.5.6后台登录 416
18.5.7后台管理主页 417
18.5.8高级类别管理 419
18.5.9判断访问用户的权限 422
18.5.10操作提示页面 423
项目发布 424
开发总结 424