ThinkPHP8学习笔记

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、测试环境的设置;

相关推荐
Dev7z10 分钟前
基于Swin Transformer的宠物皮肤病诊断系统
1024程序员节
王老师青少年编程31 分钟前
AtCoder真题及详细题解 ABC427C: Bipartize
c++·题解·1024程序员节·atcoder·csp·abc·信奥赛
gAlAxy...31 分钟前
面试JAVASE基础(五)——Java 集合体系
java·python·面试·1024程序员节
B站计算机毕业设计之家43 分钟前
计算机视觉python口罩实时检测识别系统 YOLOv8模型 PyTorch 和PySide6界面 opencv (建议收藏)✅
python·深度学习·opencv·计算机视觉·cnn·1024程序员节
大肘子咒你1 小时前
数字狂潮来袭
数据结构·c++·1024程序员节
Lethehong1 小时前
首个多院区异构多活容灾架构,浙人医创新开新篇
1024程序员节·kingbasees
呆呆的猫1 小时前
【多模态】46、DeepSeek-OCR | 一张图片是否真能抵千词
ocr·1024程序员节
唯鹿2 小时前
Copilot使用体验
ai·1024程序员节
蔚蓝星辰mic2 小时前
数据库运维查询SQL语句集合
数据库·sql·1024程序员节
金仓拾光集2 小时前
终结工艺数据分散管理:金仓数据库平替MongoDB,实现参数、配方、流程一体贯通
1024程序员节