• 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、基础控制器

    1. namespace app\controller;
    2. use app\BaseController;
    3. class User extends BaseController //继承基础控制器Ba
    4. {
    5. public function index(){
    6. #return "用户!";
    7. # return $this->app->getBasePath(); //返回当前的实际路径
    8. return $this->request->action(); // 返回当前方法名
    9. }
    10. public function login(){
    11. return "登录成功!";
    12. }
    13. }

    2、空控制器 

    1. namespace app\controller;
    2. class Error
    3. {
    4. public function __call(string $name, array $arguments) // 空控制器
    5. {
    6. // TODO: Implement __call() method.
    7. return "不存在的控制器(来自空控制器)";
    8. }
    9. }

    六、连接数据库

    1、测试环境和生产环境的不同设置;如果debug设置为true,就会去找.env环境找数据库的设置,如果debug为false,就会使用生产环境的设置。

    2、测试环境的设置; 

  • 相关阅读:
    基于五折交叉验证的支持向量机SVR回归预测研究(Matlab代码实现)
    诊断网络卡的原因
    计算机竞赛 深度学习 机器视觉 人脸识别系统 - opencv python
    MySQL事务,从redo log、bin log、undo log说起...
    【多线程与高并发】- 浅谈volatile
    C++ Reference: Standard C++ Library reference: Containers: array: array: back
    NLP中常用的utils
    linux的centos免密登录mysql数据库(mysql忘记密码情况)
    宏观经济学名词解释
    [sd_scripts]之config
  • 原文地址:https://blog.csdn.net/weixin_47401101/article/details/134023541