PHP access class inside another class

global, php, variables

Solution

You could do like this too:

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. */
}

Later you could do:

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

Problem

So I have two classes like this: ``` class foo { /* code here */ } $foo = new foo(); class bar { global $foo; public function bar () { echo $foo->something(); } } ``` I want to access the methods of foo inside all methods bar, without declaring it in each method inside bar, like this: ``` class bar { public function bar () { global $foo; echo $foo->something(); } public function barMethod () { global $foo; echo $foo->somethingElse(); } /* etc */ } ``` I don't want to extend it, either. I tried using the var keyword, but it didn't seem to work. What do I do in order to access the other class "foo" inside all methods of bar?

Original source