2015-03-10 1 views
0

Метод parent_says() говорит что-то, теперь я хочу добавить больше functonality к методу parent_says(), но изнутри дочернего класса. Как мне это сделать?Как добавить дополнительные функции для дочернего метода?

class Parent_class{ 
    function parent_says(){ 
     echo "HI. I'm parent!"; 
    } 
} 

class Child_class extends Parent_class{ 
    function parent_says(){ 
     //I want it to also says "HI. I'm parent!", that's inside parent method. 
     echo "I say hello!"; 
    } 
} 

$Child_class = new Child_class; 
$Child_class->parent_says(); 

ответ

3

Используйте метод parent:: для вызова метода родительского класса. Например.

class Child_class extends Parent_class{ 
    function parent_says(){ 
     parent::parent_says(); 
     echo "I say hello!"; 
    } 
} 

См. here для получения дополнительной информации.

+0

Почему я не могу вызвать родительский метод следующим образом: $ this-> parent_says()? – sami7913

+0

Потому что '$ this' относится к текущему объекту, и вы переопределили этот метод. Если бы вы переименовали метод вашего ребенка, вы могли бы сделать это именно так. – rjdown

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