首页 >php框架 >ThinkPHP >如何解决thinkphp new self()报错问题

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

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

下面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视频教程

以上是如何解决thinkphp new self()报错问题的详细内容。更多信息请关注PHP中文网其他相关文章!

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