function query_parameters_to_url_decode_encoded_query_parameter in Query Parameters To URL 7
Decodes an encoded string into an array of query parameters.
Example:
- /p/a/0__1__2__3/b/4__5__6/c/7 will become an array equivalent to
- ?a[0][1][2]=3&b[4][5]=6&c=7
1 call to query_parameters_to_url_decode_encoded_query_parameter()
- query_parameters_to_url_decode_query_parameter_values in ./
query_parameters_to_url.module - Decodes a query parameter values string into its array form.
File
- ./
query_parameters_to_url.module, line 325 - Query Arguments To URL module.
Code
function query_parameters_to_url_decode_encoded_query_parameter($encoded) {
$nested_key = query_parameters_to_url_nested_key();
$nested_value = query_parameters_to_url_nested_values_delimiter();
$decoded = array();
$parameters = explode($nested_value, $encoded);
foreach ($parameters as $parameter) {
$parameter_parts = explode($nested_key, $parameter);
$parameter_value = array_pop($parameter_parts);
// The conditional is for validation purposes, so it doesn't throw a fatal
// error. Scary.
if (!empty($parameter_parts)) {
drupal_array_set_nested_value($decoded, $parameter_parts, $parameter_value);
}
}
return $decoded;
}