PHP创建新的类示例-单例和工厂模式

2g32fytz  于 2023-08-02  发布在  PHP
关注(0)|答案(1)|浏览(112)

我有以下PHP类:

class Init {

private static $instance = NULL;

public function __construct(){
}

public static function __callStatic($name, $arguments){

    if (is_null(self::$instance)) {
        $class = '\\' . __NAMESPACE__ . '\Drivers\\' . $name;

        $reflection = new \ReflectionClass($class);
        self::$instance = $reflection->newInstanceArgs($arguments);

        return self::$instance;
    } else {
        return self::$instance;
    }
}

字符串
}
有没有其他方法可以调用示例化的类,使用参数数组按该顺序而不使用反射?我尝试了call_user_func_array(),但它似乎不起作用。
非常感谢你的帮助

brc7rcf0

brc7rcf01#

你可以这样尝试:

public class Example{
    private static $instance;
    public static function singleton($arguments)
        {
            if (!isset(self::$instance)) {
                echo 'Creating new instance.';
                $className = __CLASS__;
                self::$instance = new $className($arguments);
            }
            return self::$instance;
        }
}

字符串

相关问题