@deepin

Обязательно ли указывать parent::__constructor в расширяемом классе, если он есть в родителе?

Я в официальной документации такого не нашёл, но вот в какой-то статье читал, что если в родителе есть конструктор, то если он нам нужен в расширяемом классе, то указываем parent::__constructor.
А если не нужен, то нужно ли указывать parent::__constructor?
Дело в том, что он мне не нужен, но шторм ругается: отсутствует родительский конструктор.
пиу
5d3852227c250380230986.png

Его обязательно указывать?
  • Вопрос задан
  • 203 просмотра
Решения вопроса 1
1210mk2
@1210mk2
всё внимательно прочитали?
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
profesor08
@profesor08 Куратор тега PHP
Если в конструкторе родителя что-то делается, то из конструктора потомка надо его вызвать. Если не вызываешь конструктор родителя, то ты четко должен понимать что и зачем ты это делаешь.

class Constroller {
    public function __construct() {
        echo "Constroller-";
    }
}

class Home extends Constroller {
    public function __construct() {
        echo "Home\n";
    }
}

class About extends Constroller {
    public function __construct() {
        parent::__construct();
        echo "About\n";
    }
}

new Home();
new About();
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
NewGen Vision Санкт-Петербург
от 50 000 до 80 000 ₽
Depcon Екатеринбург
от 140 000 до 190 000 ₽
30 нояб. 2021, в 10:22
5000 руб./за проект
30 нояб. 2021, в 09:29
10000 руб./за проект
30 нояб. 2021, в 04:03
20000 руб./за проект