如何处理__construct()包含非现有属性的情况

时间:2018-01-22 11:27:19

标签: php joomla3.0

我有一个PHP类,其中有下面的构造函数:

public function __construct()
{
    $this->view_list = 'items';
    parent::__construct();
}

它给出了错误,如

  

"属性view_list不存在。虽然不是严格要求的   通过PHP,通常是声明属性的最佳实践   明确"

我该如何处理这种情况?

由于

1 个答案:

答案 0 :(得分:3)

您收到了通知消息,因为您的类没有名为$view_list的属性。 PHP可以处理这个问题,但是如消息所示,最好先预先创建这些。这使代码更容易阅读。如果在构造函数中没有提供任何变量值,也可以为变量设置默认值。

class YourClassName extends SomeClass {

    private $view_list;

    public function __construct()
    {
        $this->view_list = 'items';
        parent::__construct();
    }
}

或者,如果值始终相同,则将变量设置在构造函数方法之外:

class YourClassName extends SomeClass {

    private $view_list = 'items';

    public function __construct()
    {
        parent::__construct();
    }
}