thinkphp6之详解

阅读目录

  • tp6与tp5的区别
  • 安装
    • 环境要求
    • 安装composer
    • 安装稳定版
    • 安装开发版
    • 开启调试模式
    • 测试运行
    • 进入多应用模式(默认的是单应用模式)
  • 访问mvc
    • 控制器
      • 资源控制器
      • 访问控制器方法
      • 空控制器
    • 模型
    • 视图

tp6与tp5的区别

  1. 目录结构的异同 tp5核心框架是项目根目录thinkphp下 , tp6是vendor的topthink
  2. 安装方式不同,tp6仅能通过composer方式安装
  3. 类自动加载方式不同 tp6使用composer方式实现类自动加载, tp5 composer+自己实现了一套
  4. tp6使用了php7严格模式
  5. 支持更多的PSR规范 https://learnku.com/docs/psr
  6. 组件的独立 ORM 模板引擎
  7. 中间件改进 TP6开始使用了管道模式来实现中间件,比起之前版本的实现更加简洁,有序
  8. 引入Filesystem

安装

环境要求

ThinkPHP6.0的环境要求如下:

PHP >= 7.1.0

6.0版本开始,必须通过Composer方式安装和更新,所以你无法通过Git下载安装。

安装composer

参考:https://blog.csdn.net/qq_28286687/article/details/106179768

由于众所周知的原因,国外的网站连接速度很慢。因此安装的时间可能会比较长,我们建议使用国内镜像(阿里云)。

打开命令行窗口(windows用户)或控制台(Linux、Mac 用户)并执行如下命令:

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

安装稳定版

如果你是第一次安装的话,在命令行下面,切换到你的WEB根目录下面并执行下面的命令:

composer create-project topthink/think tp

这里的tp目录名你可以任意更改,这个目录就是我们后面会经常提到的应用根目录。

如果你之前已经安装过,那么切换到你的应用根目录下面,然后执行下面的命令进行更新:

composer update topthink/framework

更新操作会删除thinkphp目录重新下载安装新版本,但不会影响app目录,因此不要在核心框架目录添加任何应用代码和类库。

安装和更新命令所在的目录是不同的,更新必须在你的应用根目录下面执行

如果出现错误提示,请根据提示操作或者参考Composer中文文档。

安装开发版

一般情况下,composer 安装的是最新的稳定版本,不一定是最新版本,如果你需要安装实时更新的版本(适合学习过程),可以安装6.0.x-dev版本。

composer create-project topthink/think=6.0.x-dev tp

我用的是composer create-project topthink/think=6.0.2 tp(tp是在当前目录下创建的项目根目录,你自己可以随意修改

thinkphp6之详解_第1张图片thinkphp6之详解_第2张图片

开启调试模式

应用默认是部署模式,在开发阶段,可以修改环境变量APP_DEBUG开启调试模式,上线部署后切换到部署模式。

本地开发的时候可以在应用根目录下面定义.env文件。

通过create-project安装后在根目录会自带一个.example.env文件(环境变量示例),你可以直接更名为.env文件并根据你的要求进行修改,该示例文件已经开启调试模式

测试运行

进入tp(换成你自己定义的文件名)命令行下面,执行下面指令

cd tp
php think run

thinkphp6之详解_第3张图片
在浏览器中输入地址:http://127.0.0.1:8000/

thinkphp6之详解_第4张图片如果你本地80端口没有被占用的话,也可以直接使用
php think run -p 80
在浏览器中输入地址:http://127.0.0.1

进入多应用模式(默认的是单应用模式)

  1. 安装多应用模式扩展think-multi-app

composer require topthink/think-multi-app

thinkphp6之详解_第5张图片
2. config/app.php 存在修改为true否则添加 ‘auto_multi_app’ => true
thinkphp6之详解_第6张图片
3. 删除原有app目录下controller
4. 创建应用模块admin

php think build admin

thinkphp6之详解_第7张图片
5. 访问时加上应用名称

http://127.0.0.1:8000/admin/

thinkphp6之详解_第8张图片

访问mvc

控制器

资源控制器

资源控制器可以让你轻松的创建RESTFul资源控制器,可以通过命令行生成需要的资源控制器,例如生成admin应用的Blog资源控制器使用:

php think make:controller admin@Blog
或者
php think make:controller app\admin\controller\Blog

thinkphp6之详解_第9张图片

访问控制器方法

public function test(){
    return 'test方法';
}

访问:http://127.0.0.1:8000/admin/index/test

空控制器

空控制器的概念是指当系统找不到指定的控制器名称的时候,系统会尝试定位当前应用下的空控制器(Error)类,利用这个机制我们可以用来定制错误页面和进行URL的优化。
thinkphp6之详解_第10张图片

<?php
declare (strict_types = 1);

namespace app\admin\controller;


class Error
{
    public function __call($method, $args)
    {
        return 'error request!';
    }
}

http://127.0.0.1:8000/admin/index1/test1
index1控制器不存在,会直接去查找我们定义的Error控制器
thinkphp6之详解_第11张图片

模型

视图

你可能感兴趣的:(php,php)