$_SERVER['QUERY_STRING']
が欲しかったのです。
たとえば、URL が http://example.com/hoge?piyo=1&piyo=2
であれば、
であれば piyo=1&piyo=2
部分を取得したいのです。
結論以下のように書きました。
$request->getQueryString();
これは、laravel の内部で使っている symfony が用意しているメソッドです。
他には、以下のようにもかけます。
str_replace($request->url(), '', $request->fullUrl());
http_build_query($request->query());
違い
$_SERVER と getQueryString ではエンコードに少し違いがあります。
'?a=A&b="B"&c;alert(1);&d=あ'
request()->getQueryString()
=> "a=A&b=%22B%22&c%3Balert%281%29%3B=&d=%E3%81%82"
$_SERVER['QUERY_STRING'];
=> "a=A&b=%22B%22&c;alert(1);&d=%E3%81%82"
それと、Laravel の feature テストとかだと $_SERVER
の方は Undefined index: QUERY_STRING
になっちゃう。