为什么使用 Symfony 的 $request->query->all() 而不是 $_GET?

Why use Symfony's $request->query->all() instead of $_GET?

在框架外独立使用 Symfony 的 HttpFoundation 时,为什么要使用 $request->query->all() 获取所有 $_GET 值,而不是简单地使用 $_GET 本身?

由于此 Request 组件不会自动 escape/clean $_GET 值,使用 $request->query->all()$_GET$request->request->all() 与 $_POST 的优势是什么?

使用 Request 对象访问此信息使您的应用程序更易于测试。您不必在 运行 每次测试之前确保特定的全局状态,您只需创建一个新的 Request 对象并设置您的测试期望的值。