PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

如何解决thinkphp new self()报错问题

藏色散人
藏色散人 转载
2021-11-23 15:52:35 1556浏览

下面thinkphp框架教程栏目将给大家介绍下如何解决thinkphp new self()报错问题,希望对需要的朋友有所帮助!

具体问题描述:

public function t2()  
{  
  
  $receiver = new self();  
 
  
}

d394d0c9c8852746d71e53114ff545f.png

框架thinkphp6

解决办法:

错误提示已经很明显了:__construct() 缺少参数,看你贴的代码是没有传入 $app,我没有用过 TP6,不过像在这样的框架里,获取一个对象的方法是使用容器,使用容器时它会把依赖自动注入(即将$app 自动实例化),如果使用 new 是不会注入依赖的。

所以在使用容器时,可以这样:$receiver = invoke('xxx');

使用 new 方式时,可以这样:

$app = new App();
$receiver = new Receiver($app);

具体可以参考 TP6 的文档:https://www.kancloud.cn/manual/thinkphp6_0/1037489

推荐:《最新的10个thinkphp视频教程

声明:本文转载于:segmentfault,如有侵犯,请联系admin@php.cn删除