trait World {
public function sayHello()
{
echo "World!";
}
}
abstract class AbstractHello{}
class Hello extends AbstractHello {
use World;
public function sayHello()
{
echo "Hello";
$this->sayHello(); // calling its not working
}
}
class Hello2 extends AbstractHello {
use World;
}
Теперь, если я позвоню следующим образом, он должен показать «HelloWorld!».Как вызвать метод признаков из метода класса, который использует эту черту, если оба имени метода одинаковы?
$h = new Hello();
$h->sayHello();
И если вы звоните следующим образом, он должен показывать «Мир!».
$h = new Hello2();
$h->sayHello();
Я не хочу, чтобы изменить имя методы черты, используя в качестве оператора, так как метод SayHello() был вызван из других мест для класса ребенка, как hello2.
Выше кода не работает. Любая помощь?
Thanks @ marian0. Он работал нормально. –