return $params;
}
- /**
- * @param string $key
- * @param mixed $casToken [optional]
- * @return mixed
- */
- public function get( $key, &$casToken = null ) {
+ public function get( $key, &$casToken = null, $flags = 0 ) {
return $this->client->get( $this->encodeKey( $key ), $casToken );
}
* @return string
*/
public function decodeKey( $key ) {
- return urldecode( $key );
+ // matches %00-%20, %25, %7F (=decoded alternatives for those encoded in encodeKey)
+ return preg_replace_callback( '/%([0-1][0-9]|20|25|7F)/i', function ( $match ) {
+ return urldecode( $match[0] );
+ }, $key );
}
/**