public static function singleton($userclass) { $className = __CLASS__; if (!isset(self::$instance)) { self::$instance = new $className($userclass); } if (strtolower(get_class(self::$instance->userclass)) !== strtolower($userclass)) { self::$instance = new $className($userclass); } return self::$instance; }