从另一个类中调用函数的函数 PHP

4

我在Stackoverflow上阅读了关于抽象类的一些帖子,我认为这正是我需要的,但我不能准确地声明它。

我想做的是在classA中的一个function1中调用classB中的function2。

我该怎么做?


3
需要更多信息-在类A中是否有一个已初始化的类B实例? - Pekka
如果您没有从该类访问任何数据成员,请将函数设置为“静态”。然后,您可以使用以下方式调用它:MyClass::myFunction - Evan Mulawski
1个回答

17
如果你只需要从ClassA访问ClassB的方法而不需要两者之间的父子关系,那么静态方法可能更为合适:
class ClassA
{
  public function method1() {
    echo ClassB::method2();
  }
}

class ClassB
{
  public static function method2() {
    return 'WOOT!';
  }
}

$cls_a = new ClassA();
$cls_a->method1();

// or alternatively, you don't even need to instantiate ClassA
echo ClassB::method2();

1
有用的信息。感谢这些方法。 - Adsy2010
1
如果类在不同的目录中怎么办? - Rafael
从PHP 5.4开始,您应该使用(new ClassName)->method(); - NineCattoRules

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