将一个类传递给一个对象,该对象是该类中的一个变量


Passing class into an object that is a variable inside that class

基本上,我有一个Fuyukai.class.php文件,其中包含以下代码:

class Fuyukai {
    private $configLoader;
    function __construct() {
        $this->configLoader = new ConfigLoader($this);
    }
}

ConfigLoader有这个构造函数:

class ConfigLoader {
    private $fuyukai;
    function __construct($fuyukai)
    {
        $this->fuyukai = $fuyukai;
    }
}

正确吗?我需要某种全局类,但我真的不知道如何做到这一点,这个"解决方案"是我想到的最自然的解决方案。

代码看起来很好,我唯一要添加的是:

class ConfigLoader {
    private $fuyukai;
    //make sure only Fuyukai objects can be passed through constructor
    function __construct(Fuyukai $fuyukai)
    {
        $this->fuyukai = $fuyukai;
    }
}