我想知道当我在同一类的另一个子类中时,如何访问该类的子类中的方法。。。例如:
class foo {
}
class bar extends foo {
public function something() {
//do something here
}
}
class soap extends foo {
$this->something(); //This is the method I wanna call...
}
正如你所看到的,我想从另一个子类访问子类的方法。我如何在PHP中做到这一点?
您可以直接执行,但只有如果soap
也是bar
:的子类
class soap extends bar {
public function someFunction()
{
$this->something(); // This will work
}
}
如果是而不是,那么您仍然可以选择:获取bar
的实例,然后调用其上的方法:
class soap extends foo {
public function someFunction(bar $bar)
{
$bar->something(); // This will also work
}
}
除此之外,您也没什么可做的。由于bar
不在soap
的继承链中,因此无法在soap
的任何方法中仅使用$this
来引用something
。