php8前几天发布了,第一时间尝个鲜,切换到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
网友评论