Задать вопрос
EnChikiben
@EnChikiben

Наследование свойств PHP?

Добрый вечер! Сразу оговорюсь что я в ООП начинающей. Столкнулся с такой проблемой:


Класс a

class a {<br/>
<br/>
var $boby;<br/>
<br/>
$b = new b();<br/>
<br/>
}<br/>



Класс b наследник а

class b extends a {<br/>
<br/>
$this-&gt;boby=&quot;Текст&quot;;<br/>
<br/>
}<br/>



Все это подключаю к файлу a.php

&lt;?php<br/>
 $a= new a(); <br/>
?&gt;<br/>
<br/>
&lt;?php echo $a-&gt;body; ?&gt;<br/>
<br/>



Если свойство задать в классе a то оно выводится, а если его определить в классе b то оно не выводится.


Как это побороть подскажите.
  • Вопрос задан
  • 4151 просмотр
Подписаться 3 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
@Hint
Класс-родитель создает внутри себя объект класса, являющегося его потомком? И это нормально?
Ответ написан
Так вы и создаете класс типа a, вот если создадите класс b, то оно будет браться из вашего определения в нем.
Ответ написан
Dzuba
@Dzuba
В экземпляре класса a и нет значения у свойства body, но оно есть в свойстве b класса a.
class a
{
	var $body;
	var $b;

	function __construct()
	{
		$this->b = new b();
	}
}
class b extends a
{
	function __construct()
	{
		$this->body = 'text';
	}
}

$a = new a();

echo $a->b->body;
Ответ написан
Ваш ответ на вопрос

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

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