PHP - 每个类的配置管理器和继承

时间:2012-10-15 18:30:49

标签: php dependency-injection multiple-inheritance

我有一个类Injector,它使用get_class($this)来使用Injector获取类,从db或file加载类中的一些数据...它可以很好地使用像{{1这样的简单继承}}

问题是:如果某个类class User extends Injector延伸SpecialUser,则User仅返回get_class,而SpecialUser则不会填充所需的数据。有没有更好的解决方案然后循环使用get_parent_class()?

来解决这些问题

谢谢

1 个答案:

答案 0 :(得分:0)

您可以使用以下内容:

$names = array();

if ($this instanceof Injector) {
    $class = get_class($this);

    do {
        $names[] = $class;
        $class = get_parent_class($class);
    } while ($class !== 'Injector');
}

Here's an example of its usage