В PHP мне нужна функция для преобразования запроса с URL-адреса, например: http://example.com?key1=value1&key2=value2
в ассоциативный массив PHP: array ['key1' => 'value1', 'key2' => 'value2']
.
Я подошел к этой части кода. Он работает, но я нахожу его немного длинным. (И PHP имеет встроенные функции для всего: я удивлен, что не нашел ничего из коробки, что-то вроде обратного http_build_query
.)
Можете ли вы предложить лучший способ сделать это?
function getUrlParams($url) {
$querystring = parse_url($url, PHP_URL_QUERY);
$a = explode("&", $querystring);
if (!(count($a) == 1 && $a[0] == "")) {
foreach ($a as $key => $value) {
$b = explode("=", $value);
$a[$b[0]] = $b[1];
unset ($a[$key]);
}
return $a;
} else {
return false;
}
}