本地测试架设了几天前发布的PHP8 顺手安装Thinkphp5.1测试运行错误框架的container出错
经资料查询,是因为php8对于反射类做了一点修改,目前经简单改了代码后,项目已跑通。代码如下:
在thinkphp/library/think/Container.php的466行处,代码改为如下:
$classType = $param->getType(); $class = null !== $classType && !$classType->isBuiltin() ? $classType->getName() : null; if ($class) { $args[] = $this->getObjectParam($classType->getName(), $vars);
注意下面的if中的也要改。期待官方正式适配php8