如何始终在php中获取父类的相同实例

时间:2019-09-09 22:21:58

标签: php oop

我有一些控制器类,它们是主要控制器类的子类。 如果我在另一个控制器中实例化一个控制器,则每个调用的控制器都会再次实例化主控制器。

我尝试创建静态实例,但我认为我做的不正确。

min-height

我在父控制器中回显1,因此当我实例化home(child)控制器时,输出为11。因此,对于每个子控制器实例,将添加另一个1。我认为这意味着我将一遍又一遍地获得父控制器的新实例。

这是效率低下/不好吗?如果是,该如何始终获取父控制器的相同实例?

1 个答案:

答案 0 :(得分:2)

以某种方式,每次实例化扩展它的类时,您都会获得一个父控制器的新实例,因为子类的实例也是父类的实例,但是实例化子类的对象时,不会创建单独的父控制器的其他附加新实例。

换句话说,HomeControllerHeaderController都没有 一个Controller,但它们都是 {{1 }}。

子类扩展了父类。这意味着它将继承其所有方法,包括构造函数,并且每次调用构造函数时,您都会看到另一个输出1。但这并不意味着已创建父控制器的另一个实例。

相关问题