public static function UrlHelper::filterQueryParameters in Service Container 7.2
Same name and namespace in other branches
- 7 lib/Drupal/Component/Utility/UrlHelper.php \Drupal\Component\Utility\UrlHelper::filterQueryParameters()
Filters a URL query parameter array to remove unwanted elements.
Parameters
array $query: An array to be processed.
array $exclude: (optional) A list of $query array keys to remove. Use "parent[child]" to exclude nested items.
string $parent: Internal use only. Used to build the $query array key for nested items.
Return value
An array containing query parameters.
File
- lib/
Drupal/ Component/ Utility/ UrlHelper.php, line 87 - Contains \Drupal\Component\Utility\UrlHelper.
Class
- UrlHelper
- Helper class URL based methods.
Namespace
Drupal\Component\UtilityCode
public static function filterQueryParameters(array $query, array $exclude = array(), $parent = '') {
// If $exclude is empty, there is nothing to filter.
if (empty($exclude)) {
return $query;
}
elseif (!$parent) {
$exclude = array_flip($exclude);
}
$params = array();
foreach ($query as $key => $value) {
$string_key = $parent ? $parent . '[' . $key . ']' : $key;
if (isset($exclude[$string_key])) {
continue;
}
if (is_array($value)) {
$params[$key] = static::filterQueryParameters($value, $exclude, $string_key);
}
else {
$params[$key] = $value;
}
}
return $params;
}