2012-04-22 2 views
0

У меня есть дочерний класс, расширяющий родительский класс.может содержать данные свойства родительского класса дочернего класса?

В моем родительском классе есть защищенное свойство, в котором хранятся данные конфигурации. В родительском классе это свойство имеет все необходимые файлы конфигурации.

Но в классе child я не могу получить доступ к этим данным. Как я могу передать данные свойства конфигурации в дочерний класс?

Я использую

class Child extends Parent 
{ 
    public function __construct() 
    { 
     print_r($this->config); 
    } 
} 

, но я получаю пустой ответ.

ответ

2

Если ресурс не является Private вы можете

Есть в основном способы доступа родительского ресурса:

  1. родительской :: {идентификатор ресурса}; например. parent::config;
  2. $ this -> {resource identifier}; Если ресурс не переопределяется

Теперь, приходя к той части, из которых может вызвать эту проблему.

Возможно, потребуется выполнить родительский конструктор, чтобы сохранить конфигурацию. SO,

class Child extends Parent 
{ 
    public function __construct() 
    { 
     parent::__construct(); 
     print_r($this->config); 
    } 
} 
+0

родительский класс не имеет конструктора, также свойство защищено (я также установил его для публики). – Eli

+0

Хорошо, дампируйте свои коды или pastebin, и дайте мне ссылку – Starx

+0

мой код прост, сложный, мне нужно будет дать вам 20 различных фрагментов пасты, чтобы собрать их =/ – Eli

Смежные вопросы