PHP:【ThinkPHP】=>Model配置;ThinkPHP路由/路由分组;创建多项目
一.Model 模型
请确保你已经在数据库配置文件中配置了数据库连接信息
- 模型会自动对应数据表,模型类的命名规则是除去表前缀的数据表名称,采用驼峰法命名,并且首字母大写
- 模型自动对应的数据表名称都是遵循小写+下划线规范,如果你的表名有大写的情况,必须通过设置模型的 table 属性。
创建 model 文件:app/Model/Boke.php
controller 调用 model
①ThinkPHP 模型设置
- 为了和数据库更好的适配,模型可以提前设置对应的数据库属性,一个文件配置一个数据表
属性 | 描述 |
---|---|
name | 模型名(相当于不带数据表前后缀的表名,默认为当前模型类名) |
table | 数据表名(默认自动获取) |
pk | 主键名(默认为 id ) |
schema | 模型对应数据表字段及类型 |
disuse | 数据表废弃字段(数组) |
- name和table
- 当你的数据表没有前缀的时候,name 和 table 属性的定义是没有区别的,定义任何一个即可
- disuse 数据表废弃字段(数组)
②ThinkPHP 模型 主要功能
- 获取器
- 获取器的作用是对模型实例的(原始)数据做出自动处理
- 命名规则:get + 字段名 + Attr
- 字段名是数据表字段的驼峰转换
下面方法都是一样的使用
修改器
- 修改器的主要作用是对模型设置的数据对象值进行处理
- 命名规则: set + 字段名 + Attr
搜索器
- 搜索器的作用是用于封装字段(或者搜索标识)的查询条件表达式
- 命名规则: search + 字段名 + Attr
- 搜索器仅在调用 withSearch 方法的时候触发
二.ThinkPHP 多库查询
- 配置多个数据库
在database里面配置多个数据库
这个地方是配置默认的数据库,mysql 可以换成admin数据库
- controller 访问多库
用Db::connect 访问多个库
- model 访问多库
- 创建 model 文件:app/Model/AdminUser.php
三.ThinkPHP 路由
要使用路由,必须引入 use think\facade\Route;
配置路由
参数传值/获取参数
:号 <>号 都是固定参数/必传值
参数可选
- 额外参数
- 隐式传值,URL 中看不到,起安全防护作用。如冲突,append 方法优先
- 局部变量规则:正则表达式
- 路由分组
如果路由分组有名称就要在url地址上加上路由名称,如果没有只是/根目录就不需要加
四.多应用
- 如果要使用多应用模式,你需要安装多应用模式扩展 think-multi-app
- composer require topthink/think-multi-app 安装
注意admin项目 命名空间要记得更换,原先项目命名空间记得更换
如何congif 和 数据库 还有路由也可以单独配置,实现了多应用开发