Как правильно, если это возможно вызвать класс внутри другого класса? В классе "В" не могу вызвать функцию класса "А". Чтоб её вызвать нужно её переопределять $a = new A() в классе "В". Как можно вызвать чтоб не переопределять? или может нужно как-то правильно описывать класс "А"?index.php$a = new A();
$b = new B();A.phpclass A {
public function print_tst() {
echo "tst";
}
}B.phpclass B {
function __construct() {
$a->print_tst();
}
}

21 Авг 2019 в 07:02
192 +2
0
Ответы
1

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

Пример:

index.php

$a = new A();
$b = new B($a);

A.php

class A {
public function print_tst() {
echo "tst";
}
}

B.php

class B {
private $a;
function __construct($a) {
$this->a = $a;
$this->a->print_tst();
}
}

Теперь функция print_tst класса "A" будет вызвана в конструкторе класса "B", используя сохраненный объект класса "A" в свойстве класса "B".

20 Апр в 13:09
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 83 887 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир