/** * * open the session * @param string $save_path * @param string $session_name */ public static function open($save_path, $session_name) { self::$_db = self::getMemcache(); self::$_ivSize = mcrypt_get_iv_size(self::CIPHER, self::CIPHER_MODE); self::$_keyName = 'y' . $session_name; if (empty($_COOKIE[self::$_keyName])) { $keyLength = mcrypt_get_key_size(self::CIPHER, self::CIPHER_MODE); self::$_key = self::_randKey($keyLength); $cookie_param = session_get_cookie_params(); setcookie(self::$_keyName, base64_encode(self::$_key), $cookie_param['lifetime'], $cookie_param['path'], $cookie_param['domain'], $cookie_param['secure'], $cookie_param['httponly']); } else { self::$_key = base64_decode($_COOKIE[self::$_keyName]); } return true; }