PHP访问类在另一个类中

前端之家收集整理的这篇文章主要介绍了PHP访问类在另一个类中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我有两个这样的类:
class foo {
    /* code here */
}
$foo = new foo();
class bar {
    global $foo;
    public function bar () {
        echo $foo->something();
    }
}

我想在所有方法栏中访问foo的方法,而不是在bar内的每个方法中声明它,如下所示:

class bar {
    public function bar () {
        global $foo;
        echo $foo->something();
    }
    public function barMethod () {
        global $foo;
        echo $foo->somethingElse();
    }
    /* etc */
}

我也不想延长它.我尝试使用var关键字,但似乎没有用.如何在bar的所有方法中访问其他类“foo”我该怎么办?

你也可以这样做:
class bar {
    private $foo = null;

    function __construct($foo_instance) {
      $this->foo = $foo_instance;
    }

    public function bar () {
        echo $this->foo->something();
    }
    public function barMethod () {
        echo $this->foo->somethingElse();
    }
    /* etc,etc. */
}

以后你可以这样做:

$foo = new foo();
$bar = new bar($foo);

猜你在找的PHP相关文章