如何调用受保护的函数?

3

如何在不接触类B的情况下从类A调用函数lmn()

 class A extends B{
     public function abc(){
         return "abc";
     }
     ...
 }

 class B{
     public function xyz(){
         return "xyz";
     }
     ...
 }

 class C{
     protected function lmn(){
         return "lmn";
     }
     ...
 }

请指导我如何做这个。


2
你不能这样做。类B(也不是类A)没有继承自类C。 - Casimir et Hippolyte
你想在哪里调用它? - colburton
1个回答

1
你可以创建一个继承自C的代理类,并提供一个公共方法来进行访问:
class ProcyForC extends C {
  public function getLmn() {
    return $this->lmn();
  }
}

echo (new ProxyForC())->getLmn();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接