/** * Unserializes data after retrieval * * @param mixed $data * @return mixed */ PHP_METHOD(Phalcon_Cache_Frontend_Base64, afterRetrieve){ zval *data; phalcon_fetch_params(0, 1, 0, &data); phalcon_base64_decode(return_value, data); }
/** * Decrypt a text that is coded as a base64 string * * @param string $text * @param string $key * @return string */ PHP_METHOD(Phalcon_Crypt, decryptBase64){ zval *text, *key = NULL, *safe = NULL, decrypt_text = {}, decrypt_value = {}; phalcon_fetch_params(0, 1, 2, &text, &key, &safe); PHALCON_ENSURE_IS_STRING(text); if (!key) { key = &PHALCON_GLOBAL(z_null); } if (!safe) { safe = &PHALCON_GLOBAL(z_false); } if (zend_is_true(safe)) { ZVAL_NEW_STR(&decrypt_text, zend_string_dup(Z_STR_P(text), 0)); php_strtr(Z_STRVAL(decrypt_text), Z_STRLEN(decrypt_text), "-_", "+/", 2); } else { PHALCON_CPY_WRT_CTOR(&decrypt_text, text); } phalcon_base64_decode(&decrypt_value, &decrypt_text); PHALCON_RETURN_CALL_METHODW(getThis(), "decrypt", &decrypt_value, key); }
/** * Unserializes data after retrieval * * @param mixed $data * @return mixed */ PHP_METHOD(Phalcon_Cache_Frontend_Base64, afterRetrieve){ zval *data; PHALCON_MM_GROW(); phalcon_fetch_params(1, 1, 0, &data); phalcon_base64_decode(return_value, data); RETURN_MM(); }