В PHP мне нужна функция для преобразования строки запроса из URL, например: http://example.com?key1=value1&key2=value2
в ассоциативный массив PHP: array [' key1 '=>' значение1 ',' key2 '=>' значение2 ']
.
Я подошел к этому фрагменту кода. Это работает, но мне кажется, что это немного длинновато. (И 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;
}
}