ThinkPHP8官方文档地址:ThinkPHP官方手册
一、composer换源
1、查看 composer 配置的命令composer config -g -l
2、禁用默认源镜像命令composer config -g secure-http false
3、修改为阿里云镜像源composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
4、查看修改结果composer config -g -l
5、升级composer
(1)先获取composer安装地址:composer -h
(2)切换到获得的地址,composer self-update命令进行升级:
二、Windows环境下ThinkPHP8的安装
1、ThinkPHP8.0
的环境要求PHP大于8.0;
2、在命令行下面,切换到你的WEB根目录下面并执行下面的命令:
composer create-project topthink/think tp
这里的tp
目录名你可以任意更改,这个目录就是我们后面会经常提到的应用根目录。
3、测试运行命令:
php think run
浏览器中打开http://localhost:8000/ 就可以看到效果了。
三、开启调试模式方法
将左侧的文件名改成红色方块中的名字,文件中APP_DEBUG设置为true即可。
四、URL访问
1、规则
8.0
的URL访问受路由影响,如果在没有定义或匹配路由的情况下(并且没有开启强制路由模式的话),则是基于:
http://serverName/index.php(或者其它入口文件)/控制器/操作/参数/值...
如果使用自动多应用模式的话,URL一般是
http://serverName/index.php/应用/控制器/操作/参数/值..
2、关闭路由,关闭路由可以使用上面规则访问后端控制文件
3、当在本地测试的时候,通过phpstorm内置服务器可以访问的页面,同时想通过phpenv服务器访问,需要做如下设置。
替换代码为:RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]
五、基础控制器和空控制器
1、基础控制器
php
<?php
namespace app\controller;
use app\BaseController;
class User extends BaseController //继承基础控制器Ba
{
public function index(){
#return "用户!";
# return $this->app->getBasePath(); //返回当前的实际路径
return $this->request->action(); // 返回当前方法名
}
public function login(){
return "登录成功!";
}
}
2、空控制器
php
<?php
namespace app\controller;
class Error
{
public function __call(string $name, array $arguments) // 空控制器
{
// TODO: Implement __call() method.
return "不存在的控制器(来自空控制器)";
}
}
六、连接数据库
1、测试环境和生产环境的不同设置;如果debug设置为true,就会去找.env环境找数据库的设置,如果debug为false,就会使用生产环境的设置。
2、测试环境的设置;