最新6.0.6已经支持PHP8.0,建议直接升级ThinkPHP版本!
PHP8下全新安装ThinkPHP6.0.X出现报错,如下
Deprecated: Method ReflectionParameter::getClass() is deprecated in xxxx\vendor\topthink\framework\src\think\Container.php on line 443
解决方法,找到文件
xxxx\vendor\topthink\framework\src\think\Container.php
定位到443、445、446行
443  // $class     = $param->getClass(); // 注释掉该语句
        $reflectionType = $param->getType();// 替换成该语句
       
445  // if ($class) {
446  //     $args[] = $this->getObjectParam($class->getName(), $vars);
     // 注释掉上面445 446语句 改成下面
    
     if ($reflectionType && $reflectionType->isBuiltin() === false) {
         $args[] = $this->getObjectParam($reflectionType->getName(), $vars);具体Issues查看官方git:https://github.com/top-think/framework/pull/2371
代码变动文件:https://github.com/top-think/framework/commit/df4a07d2f51307a6fabdf75dc5b4b7f8b0ad8af8

                
                

                            
                            
                        