PHP框架 - ThinkPHP5.1
一、composer安装
1.1 安装地址:composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ 或者 composer config -g repo.packagist composer https://packagist.phpcomposer.com
二、ThinkPHP安装
2.1 安装具体版本命令:composer create-project topthink/think=5.1.41 51test
① 安装不成功,切换一下镜像:composer config -g repo.packagist composer https://mirrors.aliyun.com/composer
② 如果需要更新项目版本,直接进入项目根目录,直接运行如下代码:composer update topthink/framework
三、ThinkPHP框架
3.1 URL解析模式
① 普通模式:
② pathinfo模式:
③ rewrite模式:需要修改配置文件,打开apache的httpd.conf文件, 搜索mod_rewrite.so, 把前面的#去掉就行;然后在index.php入口文件的统计文件目录下新建.htaccess文件(此文件框架安装以后默认有)
④ 兼容模式:
3.2 模块设计
① 绑定模块:修改public/index.php文件
3.3 控制器
① 修改命名空间的应用名称:在项目的根目录新建一个.env的文件,里面指定应用名
② 渲染输出
②.① 直接return
②.② 使用json输出,return json(), 两种形式都可以
②.③ 模板输出, return view()
③ 控制器前置操作
④ 跳转和重定向
④.①
④.② 跳转页面设置,根目录/config/app.php配置文件中修改
⑤ 空方法和空控制器
⑤.① 空方法
⑤.② 空控制器 在对应模块目录下新建一个Error.php, config/app.php默认空控制器名称是Error
3.4 数据库操作
① 操作数据库
② 模型 处理和配置数据库相关信息
③ 基本查询操作
③.① 基本查询操作
③.② 更多查询操作
④ 新增数据
⑤ 修改数据
⑥ 删除数据
⑦区间查询
⑧ 其它查询 exp表示自定义的,where第三个参数自己发挥
⑨ 时间查询
⑨.① 传统查询方式:
⑨.② 快捷查询方式:
⑩ 固定查询
①① 其它查询
①② 聚合、原生和子查询
①②.① 子查询:
①②.② 链式操作
①②.③ field
注意:第5条的 field(true) ,数据库查询的时候不用回表,效率比 * 高多了
①②.④ 链式操作下..
limit
page
order
group
having
3.5 模型
① 模型定义
② 设置模型
③ 模型操作
注意:第2条,数据库操作返回的数据接口是数组数组,模型操作返回的是对象数组,对象数组
④ 模型新增数据
⑤ 模型删除数据
⑥ 模型修改
⑦ 模型查询
⑧ 模型获取器
⑨ 模型修改器
⑩ 模型搜索器
控制器中:
模型中:
①① 模型数据集
①② 模型自动时间戳和指定字段
①③ 模型类型转换和数据完成
①④ 模型查询范围
①⑤ 模型输出
3.6 JSON字段
① 在数据库创建一个json字段
② 添加数据
3.7 路由
① 路由定义
② 路由的变量规则和闭包
② 路由地址
③ 路由缓存
④ 路由参数
⑤ 快捷路由
⑥ 路由分组
⑦ 路由注解
⑧ 路由MISS
⑨ 跨域请求
⑩ 路由绑定
①① 路由别名
①② 资源路由
①② 域名路由
①③ 域名绑定
①④ 路由URL地址生成
3.8 请求对象
① 请求对象
② 请求信息
③ 请求变量
④ HTTP头信息
⑤ 伪静态
⑥ 参数绑定
⑦ 请求缓存
⑧ 响应操作
⑨ 文件下载
3.9 容器和依赖注入
① 依赖注入
② 容器
③ facade
3.10 钩子和行为
① 概念
② 案例演示
3.10 中间件
① 中间件定义
② 前后置中间件
③ 路由中间件
④ 控制器中间件
3.11 异常处理
① 异常处理
3.12 日志处理
① 日志处理
3.13 验证器
① 验证器定义
② 验证场景
③ 验证静态调用
④ 表单令牌
⑤ 验证规则
3.14 session
① session
② scookie
3.15 多语言
① 多语言配置
3.16 文件上传
① 单文件上传
② 多文件上传
3.17 缓存功能
① 缓存配置
3.18 验证码功能
① 验证码
下载验证码命令:composer require topthink/think-captcha=2.0.*
3.19 数据库事件
① 数据库事件
① 模型事件
3.20 关联模型
① 关联模型定义
主表模型
附表模型
控制器
② 一对一关联查询
③ 一对多关联查询
④ 关联预载入
⑤ 关联统计
⑥ 关联输出
⑦ 多对多关联