Для разбора url есть функция parse_url(). Она делит url на составные части и пишет их в ассоциативный массив. После выполнения:
$result=parse_url('
localhost/?a=1&b=2&c=3');
$result['query'] будет содержать a=1&b=2&c=3.
Для разбора url-параметров есть функция parse_str(). После выполнения:
parse_str('a=1&b=2&c=3',$params);
В $params будет ассоциативный массив с параметрами.