/** * Connect to Memcached server * * @since 2.0.7 * @change 2.1.8 * * @hook array cachify_memcached_servers Array with memcached servers * * @return boolean true/false TRUE bei Erfolg */ private static function _connect_server() { /* Not enabled? */ if (!self::is_available()) { return false; } /* Already connected */ if (is_object(self::$_memcached)) { return true; } /* Init */ self::$_memcached = new Memcached(); /* Set options */ if (defined('HHVM_VERSION')) { self::$_memcached->setOption(Memcached::OPT_COMPRESSION, false); self::$_memcached->setOption(Memcached::OPT_BUFFER_WRITES, true); self::$_memcached->setOption(Memcached::OPT_BINARY_PROTOCOL, true); } else { self::$_memcached->setOptions(array(Memcached::OPT_COMPRESSION => false, Memcached::OPT_BUFFER_WRITES => true, Memcached::OPT_BINARY_PROTOCOL => true)); } /* Connect */ self::$_memcached->addServers((array) apply_filters('cachify_memcached_servers', array(array('127.0.0.1', 11211)))); return true; }
/** * Verfügbare Cache-Methoden * * @since 2.0.0 * @change 2.1.3 * * @param array $methods Array mit verfügbaren Arten */ private static function _method_select() { /* Defaults */ $methods = array(self::METHOD_DB => esc_html__('Database', 'cachify'), self::METHOD_APC => 'APC', self::METHOD_HDD => esc_html__('Hard disk', 'cachify'), self::METHOD_MMC => 'Memcached'); /* APC */ if (!Cachify_APC::is_available()) { unset($methods[1]); } /* Memcached? */ if (!Cachify_MEMCACHED::is_available()) { unset($methods[3]); } /* HDD */ if (!Cachify_HDD::is_available()) { unset($methods[2]); } return $methods; }