如何在PHP中获取特定类的实例?

use*_*729 13 php class instance

我需要检查是否存在实例class_A,如果确实存在,则获取该实例.

如何用PHP做到这一点?

一如既往,我认为一个简单的例子是最好的.

现在我的问题变成:

$ins = new class_A();
Run Code Online (Sandbox Code Playgroud)

如何在实例class_A化时将实例存储在静态成员变量中?

如果在调用时可以存储实例会更好__construct().比如,它应该不受限制地实现它的实现方式.

Tom*_*igh 33

你所描述的基本上是单身人士模式.请查看此问题,原因很简单,您可能不想这样做.

如果你真的想这样做,你可以实现这样的事情:

class a {
    public static $instance;
    public function __construct() {
        self::$instance = $this;
    }

    public static function get() {
        if (self::$instance === null) {
            self::$instance = new self();
        }
        return self::$instance;
    }
}

$a = a::get();
Run Code Online (Sandbox Code Playgroud)


tro*_*skn 7

你要求的是不可能的(好吧,也许不是技术意义上的,但非常不切实际).它表明你对对象和类的目的有更深的误解.

  • +1 - 我认为你已经击中了头部. (7认同)
  • 这是Singleton模式的常见用例,确实可以在PHP中实现. (2认同)