ThinkPHP3.0
完全开发手册
1
入门
版权声明
1 入门
1.1 简介
1.2 基础概念
1.2.1 LAMP
1.2.2 OOP
1.2.3 MVC
1.2.4 ORM
1.2.5 AOP
1.2.6 CURD
1.2.7 ActiveRecord
1.2.8 单一入口
1.3 获取ThinkPHP
1.4 环境要求
1.5 许可协议
1.6 目录结构
1.7 命名规范
1.8 MVC分层
1.9 CBD架构
1.10 特性概述
1.11 系统流程
1.12 开发流程
2 入口
2.1 入口文件
2.2 项目目录
2.3 部署目录
2.4 项目编译
2.5 调试模式
3 配置
3.1 配置格式
3.2 惯例配置
3.3 项目配置
3.4 调试配置
3.5 分组配置
3.6 读取配置
3.7 动态配置
3.8 扩展配置
4 函数和类库
4.1 函数库
4.1.1 系统函数库
4.1.2 项目函数库
4.1.3 扩展函数库
4.1.4 函数加载
4.2 类库
4.2.1 基类库
4.2.2 应用类库
4.2.3 类库导入
4.2.4 导入第三方类库
4.2.5 自动加载
5 控制器
5.1 URL模式
5.2 模块和操作
5.3 定义控制器
5.4 空操作
5.5 空模块
5.6 模块分组
5.7 URL伪静态
5.8 URL路由
5.9 URL重写
5.10 URL生成
5.11 URL大小写
5.12 前置和后置操作
5.13 跨模块调用
5.14 页面跳转
5.15 重定向
5.16 获取系统变量
5.17 判断请求类型
5.18 获取URL参数
5.19 AJAX返回
6 模型
6.1 模型定义
6.2 模型实例化
6.3 字段定义
6.4 数据主键
6.5 属性访问
6.6 跨库操作
6.7 连接数据库
6.8 切换数据库
6.9 分布式数据库
6.10 创建数据
6.11 字段映射
6.12 连贯操作
6.12.1 WHERE
6.12.2 TABLE
6.12.3 DATA
6.12.4 FIELD
6.12.5 ORDER
6.12.6 LIMIT
6.12.7 PAGE
6.12.8 GROUP
6.12.9 HAVING
6.12.10 JOIN
6.12.11 UNION
6.12.12 DISTINCT
6.12.13 RELATION
6.12.14 LOCK
6.12.15 CACHE
6.13 CURD操作
6.14 ActiveRecord
6.15 自动验证
6.16 自动完成
6.17 查询语言
6.17.1 查询方式
6.17.2 表达式查询
6.17.3 快捷查询
6.17.4 区间查询
6.17.5 组合查询
6.17.6 统计查询
6.17.7 定位查询
6.17.8 SQL查询
6.17.9 动态查询
6.17.10 子查询
6.18 查询锁定
6.19 字段排除
6.20 事务支持
6.21 高级模型
6.21.1 字段过滤
6.21.2 序列化字段
6.21.3 文本字段
6.21.4 只读字段
6.21.5 悲观锁和乐观锁
6.21.6 延迟更新
6.21.7 数据分表
6.21.8 返回类型
6.22 视图模型
6.22.1 视图定义
6.22.2 视图查询
6.23 关联模型
6.23.1 关联关系
6.23.2 关联定义
6.23.3 关联查询
6.23.4 关联操作
6.24 Mongo模型
6.24.1 主键
6.24.2 字段检测
6.24.3 连贯操作
6.24.4 查询支持
6.24.5 表达式查询
6.24.6 设置支持
6.24.7 其他
6.25 动态模型
6.26 虚拟模型
7 视图
7.1 模板定义
7.2 模板赋值
7.3 模板输出
7.4 模板替换
7.5 获取内容
7.6 模板引擎
7.7 布局模板
8 模板引擎
8.1 变量输出
8.2 系统变量
8.3 使用函数
8.4 默认值输出
8.5 使用运算符
8.6 内置标签
8.7 包含文件
8.8 导入文件
8.9 Volist标签
8.10 Foreach标签
8.11 For标签
8.12 Switch标签
8.13 比较标签
8.14 范围判断标签
8.15 Present标签
8.16 Empty标签
8.17 Defined标签
8.18 Define标签
8.19 Assign标签
8.20 IF标签
8.21 标签嵌套
8.22 使用PHP代码
8.23 模板布局
8.24 原样输出
8.25 模板注释
8.26 引入标签库
8.27 修改定界符
8.28 避免JS混淆
9 日志
9.1 日志级别
9.2 记录方式
9.3 手动记录
10 错误
10.1 异常处理
10.2 异常模板
10.3 异常显示
11 调试
11.1 运行状态
11.2 页面Trace
11.3 调试方法
11.3.1 变量调试
11.3.2 性能调试
11.3.3 断点调试
11.3.4 错误调试
11.3.5 模型调试
12 缓存
12.1 缓存方式
12.2 动态缓存
12.3 缓存队列
12.4 快捷缓存
12.5 快速缓存
12.6 查询缓存
12.7 SQL解析缓存
12.8 静态缓存
13 扩展
13.1 行为扩展
13.1.1 行为和标签
13.1.2 内置行为
13.1.3 行为扩展
13.1.4 行为调用
13.2 类库扩展
13.2.1 基类库扩展
13.2.2 应用类库扩展
13.2.3 第三方类库扩展
13.3 控制器扩展
13.3.1 控制器扩展接口
13.3.2 Hack方法
13.4 模型扩展
13.4.1 模型扩展接口
13.4.2 调用扩展模型
13.5 驱动扩展
13.5.1 数据库驱动
13.5.2 缓存驱动
13.5.3 Session驱动
13.5.4 标签库驱动
13.5.5 模板引擎驱动
13.6 Widget扩展
13.7 模式扩展
13.7.1 使用模式扩展
13.7.2 简洁模式
13.7.3 精简模式
13.7.4 命令模式
13.7.5 AMF模式
13.7.6 PHPRPC模式
13.7.7 REST模式
13.7.8 定制模式扩展
13.8 引擎扩展
14 安全
14.1 表单令牌
14.2 字段类型验证
14.3 防止SQL注入
14.4 输入过滤
14.5 上传安全
14.6 防止XSS攻击
14.7 其他安全建议
14.8 目录安全文件
14.9 保护模板文件
15 性能
15.1 关闭调试模式
15.2 开启缓存
15.3 合并字段缓存
15.4 优化SQL
15.5 替换入口
15.6 前端优化
16 部署
16.1 PATH_INFO支持
16.2 隐藏index.php
16.3 二级域名部署
16.4 定制错误页面
16.5 设置时区
17 SAE支持
17.1 SAE介绍
17.2 获取SAE
17.3 SAE开发
17.3.1 配置
17.3.2 数据库
17.3.3 缓存
17.3.4 文件上传
17.3.5 图片处理
17.3.6 日志记录
17.3.7 Trace信息
17.3.1 隐藏index.php
17.3.1 代码横跨性建议
18 REST支持
18.1 REST介绍
18.2 REST模式
18.3 REST配置
18.4 REST路由
18.5 REST方法
19 杂项
19.1 Session支持
19.2 Cookie支持
19.3 日期和时间
19.4 WML开发
19.5 多语言
19.6 数据分页
19.7 文件上传
19.8 验证码
19.9 图片添加水印
19.10 IP获取和定位
20 附录
20.1 常量参考
20.1.1 预定义常量
20.1.2 路径常量
20.1.3 系统常量
20.2 配置参考
20.2.1 惯例配置
20.2.2 行为配置
20.3 关于升级
20.4 大事记
21 鸣谢
NetPc