安装think
之前说过thinkphp 6 的安装 这里就不在叙述
如果学过 之前的 thinkphp 3.2.3 - thinkphp 5.1 的同学 在学习thinkphp 6上 可能会有优势~ 但仅限于语法优势
tp3.2.3 - tp6 全部 基于 MAC 逻辑开发
什么是MAC?
mac 为
M -> model 模型层 即连接数据库的模型
a -> action 方法层 作为主要的前后端 交流媒介
c -> controller 控制器层 控制器层 作为 放入方法层的主要方式
如: 我们在 thinkphp 项目根目录/app/ 中 创建一个 名为 admin 的后台应用 下的Index控制器 的 index 方法:
控制器层
<?php
declare (strict_types = 1);
namespace app\admin\controller;
use think\Request;
class Index extends \app\common\controller\AdminBase
{
// 我是一个方法层
public function index(){
echo 'hello thinkphp world'
}
}
那么我们在访问 http://localhost/admin 的时候 将会在页面 输出 hello thinkphp worl
当然 使用TP6 的同学 需要 安装 多应用
composer require topthink/think-multi-app (多应用部署)
使用语法创建 控制器
php think make:controller admin@Index
即 php think 创建:控制器 应用名@控制器名称
安装后默认使用单应用模式部署,目录结构如下:
├─app 应用目录
│ ├─controller 控制器目录
│ ├─model 模型目录
│ ├─view 视图目录
│ └─ ... 更多类库目录
│
├─public WEB目录(对外访问目录)
│ ├─index.php 入口文件
│ ├─router.php 快速测试文件
│ └─.htaccess 用于apache的重写
│
├─view 视图目录
├─config 应用配置目录
├─route 路由定义目录
├─runtime 应用的运行时目录
也许有人会疑惑 为什么 在tp6 之前 的 5版本 和 3.2.3 版本 不需要?
因为 tp6 为了做到更灵活 除了一些必要的配置 应用 缓存 路由 等 统统都放到的vendor Composer类库目录 当中
可以理解为 tp6 不在需要 原有的 项目\think 目录了 它统统都以vendor 的形式调用
也就是说 如果 你在tp6 中使用 视图方法 view 这里将不会生效 除非你安装它我会在项目最后 放入 一个项目所需要的全部 composer 类库
模型层
如: 你创建了一个 mysql 为: turing_user 表
那么 你在thinkphp目录 app controller 或者其他 app 下的应用中 创建了一个 model 的文件夹
如: 在 app/common/model/User 中创建了一个 model层 它的定义 可以假设为 连接数据库语法
select * from turing_user 语法链接
模型层 可以 select update delete 等语法处理
基础模型层预览
<?php
declare (strict_types = 1);
namespace app\common\model;
use think\Model;
/**
* @mixin \think\Model
*/
class User extends Model{
}
使用命令快速创建
php think make:model common@User