ThinkPHP实战实战性很强,没有冗长的概念讲解,都是实际项目中应用的实用技术,比如验证码、文件上传、图像处理、调试、安全、缓存等。留言板、博客、论坛、微信公众平台开发4个实战项目案例,使读者尽快切入ThinkPHP企业级项目开发。

内容简介

PHP是一种通用开源脚本语言,开源、跨平台、易于应用,主要适用于Web开发领域。MVC模式使得PHP在大型Web项目开发中耦合性低、重用性高、可维护性高、有利于软件工程化管理。本书以实用性为目标,系统地介绍了ThinkPHP框架的相关技术及其在Web开发中的应用。 全书共14章,每一章都是相对独立的知识点的集合。内容涵盖了ThinkPHP常用功能模块和实用技巧、MySQL数据库的设计与应用、完整的Web项目开发流程等目前PHP开发中*主流的技术,每一章都有大量的示例以及详尽的注释,便于读者的理解和掌握。*后通过4个完整的项目详细介绍了Web应用从设计到运行的各个环节,便于读者更好地实践。 对于拥有PHP基础而不知道下一步该做什么的读者而言,本书不失为一本好的入门教材,本书所有的实例都可以在Web开发中直接应用,使读者能够加快Web应用开发的进程。此外,本书也适合对于网络开发有兴趣的读者,以及大中专院校和培训机构的师生阅读与参考。

作者简介

夏磊,目前从事软件开发工作。精通PHP服务器脚本语言技术,善于把握运用新技术,如LAMP&LNMP平台以及Node.js平台下Web软件的开发、软件架构、设计模式等。作者博客上大量的PHP相关技术文章,深受读者好评。

目  录
目  录
第1章  ThinkPHP入门 1
1.1 MVC模式概述 1
1.2 ThinkPHP是什么 2
1.3  搭建PHP开发环境 2
1.3.1 获取UPUPW 2
1.3.2 安装UPUPW 3
1.3.3 目录结构说明 4
1.3.4 添加虚拟主机 4
1.3.5 安装集成开发环境PHPStorm 6
1.4  第一个ThinkPHP程序 7
1.5  应用结构说明 8
1.5.1 目录说明 8
1.5.2 入口文件 8
1.5.3 自动生成 9
1.5.4 模块 9
1.5.5 控制器 9
1.6  术语解释 10
1.7  小结 11
第2章  配  置 12
2.1  配置类型 13
2.1.1 默认配置 13
2.1.2 公共配置 13
2.1.3 模式配置 13
2.1.4 调试配置 14
2.1.5 场景配置 14
2.1.6 模块配置 14
2.1.7 扩展配置 14
2.1.8 动态配置 15
2.2  配置操作 15
2.2.1 C函数 16
2.2.2 读取配置 17
2.2.3 加载扩展配置 19
2.2.4 写入配置 20
2.3  小结 23
第3章  路  由 24
3.1 URL的三种模式 24
3.1.1 动态URL 24
3.1.2 静态URL 25
3.1.3 伪静态URL 25
3.2 ThinkPHP的路由 25
3.2.1 路由模式 25
3.2.2 路由配置 29
3.3  小结 34
第4章  控制器 35
4.1  控制器的定义 35
4.2  前置操作和后置操作 37
4.3  动作参数绑定 38
4.4  伪静态 40
4.5 URL大小写 40
4.6 URL生成 41
4.6.1 地址表达式 41
4.6.2 参数 41
4.6.3 伪静态后缀 41
4.6.4 URL模式处理 41
4.6.5 生成路由地址 42
4.7 Ajax返回 42
4.8  重定向和页面跳转 43
4.8.1 重定向 43
4.8.2 页面跳转 44
4.9 HTTP请求方法 46
4.10 读取输入 48
4.11 空操作 50
4.12 空控制器 51
4.13 小结 52
第5章  模  型 53
5.1  准备工作 53
5.2  模型定义 54
5.3  模型实例化 54
5.3.1 new实例化 54
5.3.2 M函数实例化 55
5.3.3 D函数实例化 55
5.3.4 空模型实例化 55
5.4  连贯操作 55
5.4.1 where 56
5.4.2 table 57
5.4.3 alias 57
5.4.4 data 58
5.4.5 field 58
5.4.6 order 59
5.4.7 limit 60
5.4.8 page 61
5.4.9 group 61
5.4.10 having 61
5.4.11 join 61
5.4.12 union 62
5.4.13 distinct 62
5.4.14 lock 62
5.4.15 cache 63
5.4.16 fetchSql 63
5.4.17 strict 64
5.4.18 index 64
5.5 CURD操作 64
5.5.1 创建数据 64
5.5.2 插入数据 65
5.5.3 读取数据 65
5.5.4 更新数据 66
5.5.5 删除数据 67
5.6  查询语言 68
5.6.1 查询方式 68
5.6.2 表达式查询 68
5.6.3 快捷查询 70
5.6.4 区间查询 71
5.6.5 统计查询 71
5.7  自动验证 72
5.8  自动完成 78
5.9  视图模型 82
5.10 关联模型 85
5.10.1 HAS_ONE 85
5.10.2 BELONGS_TO 88
5.10.3 HAS_MANY 89
5.10.4 MANY_TO_MANY 90
5.11 小结 91
第6章  视  图 92
6.1  模板定义 92
6.2  模板主题 92
6.3  模板赋值 93
6.4  模板渲染 93
6.5  总结 94
第7章  模  板 95
7.1  变量输出 95
7.1.1 输出形式 95
7.1.2 测试 96
7.2  系统变量 98
7.2.1 语法形式 98
7.2.2 配置输出 98
7.2.3 测试 98
7.3  函数 100
7.3.1 函数类型 100
7.3.2 测试 100
7.4  变量默认值 101
7.4.1 语法形式 101
7.4.2 测试 102
7.5  算术运算符 103
7.5.1 语法形式 103
7.5.2 测试 103
7.6  模板继承 105
7.6.1 语法形式 105
7.6.2 测试 106
7.7  视图包含 107
7.7.1 语法形式 107
7.7.2 模板表达式 107
7.7.3 模板文件 107
7.7.4 测试 107
7.8  内置标签 108
7.8.1 volist标签 109
7.8.2 foreach标签 110
7.8.3 for标签 110
7.8.4 switch标签 111
7.8.5 比较标签 111
7.8.6 empty标签 114
7.8.7 defined标签 114
7.8.8 标签嵌套 114
7.8.9 import标签 115
7.8.10 应用原生PHP 115
7.8.11 不解析输出 115
7.9  模板布局 116
7.10 模板常量替换 116
7.11 模板注释 117
7.12 测试 118
7.13 总结 126
第8章  调  试 127
8.1  调试模式 127
8.2  异常处理 127
8.3  日志 128
8.3.1 日志级别 129
8.3.2 记录方式 129
8.3.3 写入日志 129
8.4  变量输出 130
8.5  执行统计 130
8.6 SQL输出 131
8.7  测试 131
8.7.1 异常测试 131
8.7.2 日志测试 132
8.7.3 变量输出测试 133
8.7.4 执行统计测试 133
8.7.5 SQL输出测试 134
8.8  总结 135
第9章  缓  存 136
9.1  数据缓存 136
9.1.1 写入缓存 136
9.1.2 读取缓存 136
9.1.3 删除缓存 137
9.2  页面缓存 137
9.3  数据库查询缓存 138
9.4  总结 139
 
第10章  专  题 140
10.1 session操作 140
10.1.1 session写入 140
10.1.2 session读取 140
10.1.3 session删除 140
10.2 cookie操作 141
10.2.1 cookie写入 141
10.2.2 cookie读取 141
10.2.3 读取所有cookie 141
10.2.4 cookie删除 141
10.3 分页 141
10.3.1 分页语法 141
10.3.2 测试 142
10.4 文件上传 145
10.5 验证码 146
10.6 图像处理 149
10.6.1 实例化Image 149
10.6.2 获取图片基本信息 149
10.6.3 图像裁剪 150
10.6.4 图像缩略图 151
10.6.5 水印 152
10.7 总结 153
第11章  留言板项目实战 154
11.1 项目目的 154
11.2 项目需求 154
11.3 数据表设计 154
11.4 模块设计 155
11.5 编码实现 155
11.5.1 编写模型 155
11.5.2 编写留言控制器 156
11.5.3 编写用户控制器 159
11.5.4 编写留言列表 162
11.5.5 编写留言发表页面 163
11.5.6 编写用户登录界面 163
11.5.7 编写用户注册页面 164
11.6 运行效果 165
11.6.1 留言界面 165
11.6.2 用户登录 166
11.6.3 登录后留言列表 166
11.6.4 发表留言 166
11.6.5 留言成功 166
11.6.6 注册页面 167
11.7 项目总结 167
第12章  博客系统项目实战 168
12.1 项目目的 168
12.2 需求分析 168
12.3 功能设计 168
12.4 数据库设计 169
12.5 数据库字典 169
12.6 模块设计 171
12.6.1 Admin模块 171
12.6.2 Common模块 175
12.6.3 Home模块 177
12.7 项目总结 182
第13章  论坛系统项目实战 183
13.1 项目目的 183
13.2 功能设计 183
13.3 数据库设计 183
13.4 数据库字典 184
13.5 模块设计 186
13.5.1 Common模块 186
13.5.2 Admin模块 190
13.5.3 Home模块 192
13.6 项目总结 193
第14章  微信公众号开发 195
14.1 项目目的 195
14.2 功能设计 195
14.3 开通测试公众号 196
14.4下载开发类库 197
14.5 开始会话开发 197
14.5.1 注册流程 199
14.5.2 登录流程 200
14.5.3 查看个人资料流程 200
14.5.4 上传头像流程 200
14.5.5 退出登录流程 200
14.5.6 全局回复处理 201
14.5.7 示例代码 201
14.5.8 测试 212
14.6 自定义菜单开发 213
14.6.1 获取AccessToken 213
14.6.2 创建自定义菜单 214
14.6.3 响应自定义菜单 216
14.7 项目总结 216
结  语 217

《ThinkPHP实战》随书代码

本地部署教程

参考数据搭建本地upupw集成环境
在本地新建think_inaction数据库
下载程序代码点击下载,将其解压到web目录如thinphp-inaction
在需要测试的项目中更改数据库配置文件Application/Common/Conf/config.php或者Applicatio/Home/Conf/confg.php,更改为自己的账号密码
//localhost/think-inaction/项目名或章节名 访问即可

下载体验

请输入密码查看内容!

如何获取密码?

 

点击下载