PHP:如果具有不同的值,如何从子类访问受保护的变量?

时间:2011-01-30 22:04:07

标签: php oop inheritance

如果具有不同的值,如何从子类访问受保护的变量?

错误访问的示例:parent :: $ _ my给出错误

class Father{
  protected $_my=array('a','b');
}

class Child{
   protected $_my=array('c','d');
  function __construct(){
   parent::__construct();
   $this->_my=array_merge(parent::$_my,$this->_my);
  }
}

谢谢, 约瑟夫

2 个答案:

答案 0 :(得分:3)

实例化子类时,

$this->_my将从父级继承,因此您只需使用:

$this->_my = array_merge($this->_my, array('c','d'));

答案 1 :(得分:1)

你的设计有问题。您已经声明了父级内的子级可以访问的变量。

尝试将值添加到现有变量,而不是重新定义它。