Почему родительский класс завершает работу до запуска дочернего?

Имеется 2 класса.
class Base {
  protected $vars;

  public function set($params){
    $this -> vars = $params;
  }
}


class Child extends Base{
  public function get(){
    echo $this -> vars;
  }
}

$base = new Base;
$base -> set('test');

$child = new Child;
$child -> get();


Мне нужно использовать параметры из родительского класса в дочерних, но перед объявлением объекта дочернего класса, родительский завершает свою работу и параметры использовать не получается
  • Вопрос задан
  • 2196 просмотров
Решения вопроса 1
Вы видимо не до конца понимаете ООП и наследование
при инициализации $base вы используете объект класса Base, а при инициализации $child вы используете объект класса Child, в котором так же инициализируется класс Base
поэтому вам просто нужно
$class = new Child;
$class->set('test');
echo $class->get();
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
pavel_salauyou
@pavel_salauyou
Symfony2 & Angular разработчик
просто тупо потому, что вы создаёте 2 разных инстанса
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы