解密PHP类

时间:2016-02-16 11:47:42

标签: php class singleton

我正在试图弄清楚下面的代码到底发生了什么。有人能指出我正确的方向吗?这是第一行wordpress插件,它为管理员中的菜单项添加了额外的设置。

class Some_Class {
    private static $instance = null;
    public static function get_instance() {
        return null == self::$instance ? self::$instance = new self : self::$instance;
    }

1 个答案:

答案 0 :(得分:2)

这是singleton pattern

静态函数get_instance将返回类Some_Class的实例。如果未设置变量$instance,它将创建该类的新实例并将其保存到此变量。如果设置了,它将返回变量。

如果使用正确,此设计模式确保在运行时只能创建此类的一个对象。