8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

为什么我的 php 保护变量在子类中被清空?

user3932000 1月前

31 0

我有一个带有受保护变量的 Laravel 控制器,我想在许多其他控制器中使用它,但是当我尝试在子类中访问它时出现错误:在 nu 上调用成员函数 add()...

我有一个带有受保护变量的 Laravel 控制器,我想在许多其他控制器中使用它,但是当我尝试在子类中访问它时出现错误:

调用 null 上的成员函数 add()

这意味着之前初始化的变量现在为空,我不知道为什么,代码:

class Controller extends BaseController {
  protected $ipfs_node_root;

  public function __construct() 
  {
    Funcoes::consolelog('Controller::creating ipfs node access point...');
    $ipfs_node_root = new IPFS();

  }

}

在扩展类中:

class PostController extends Controller {

 private function handle(){

    Funcoes::consolelog('PostController::handle uploading file content to ipfs node.');
    // for the sake of test, I change the _root to _local ipfs_node and it works
    $ipfs_node_local = new IPFS();
    $arq_hash = $this->ipfs_node_root->add($arq->get());
 }
}

该类 PostController 没有__construct。

编辑 我已经向子类添加了 __construct 方法,但错误仍然存​​在:

public function __construct() 
{
    parent::__construct();
    Funcoes::consolelog('PostController::__construct');
}
帖子版权声明 1、本帖标题:为什么我的 php 保护变量在子类中被清空?
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由user3932000在本站《laravel》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 当您扩展一个包含构造函数的类时,扩展类 必须 包含一个构造函数,并且该构造函数 必须 调用 parent::_construct() ,否则您将得到您所得到的。

返回
作者最近主题: