handle = new \Redis; if ($options['persistent']) { $this->handle->pconnect($options['host'], $options['port'], $options['timeout'], 'tw_persistent_id' . $options['select']); } else { $this->handle->connect($options['host'], $options['port'], $options['timeout']); } if ('' != $options['password']) { $this->handle->auth($options['password']); } if (0 != $options['select']) { $this->handle->select($options['select']); } } else { throw new \BadFunctionCallException('not support: redis'); } } public static function instance() { if ( is_null(self::$inst) ) { $options = Config::get('redis', []); print_r($options); self::$inst = new static($options); } return self::$inst; } public static function __callStatic($name, $arguments) { return self::instance()->handle->{$name}(...$arguments); } }