如何在 Laravel 中获取 HTTP 请求主体的内容?

laravelphpserver side programming更新于 2025/4/29 21:07:17

要获取 HTTP 请求的详细信息,您需要使用类 Illuminate\Http\Request。

使用上述类,您将能够从 HTTP 请求中获取输入、cookie 和文件。现在考虑以下表格 -

要从 HTTP 请求中获取所有详细信息,您可以执行以下操作 -

示例 1

使用 $request->all() 方法

在表格中输入详细信息,如下所示 -

提交后,它将检索所有输入数据并返回包含数据的数组。

public function validateform(Request $request) { $input = $request->all(); print_r($input); }

输出

上述代码的输出是 −

Array (
   [_token] => 367OQ9dozmWlnhu6sSs9IvHN7XWa6YKpSnnWrBXx
   [name] => Rasika Desai
   [email] => rasika@gmail.com
   [age] => 20
   [address] => Pune
)

示例 2

使用 $request->collect() 方法。

此方法将以集合形式返回数据。

public function validateform(Request $request) { $input = $request->collect(); print_r($input); }

输出

上述代码的输出是 −

Illuminate\Support\Collection Object (
   [items:protected] => Array(
      [_token] => 367OQ9dozmWlnhu6sSs9IvHN7XWa6YKpSnnWrBXx
      [name] => Rasika Desai
      [email] => rasika@gmail.com
      [age] => 20
      [address] => Pune
   )
   [escapeWhenCastingToString:protected] =>
)

示例 3

使用 $request->getContent() 方法。

此方法将输出作为 URL 查询字符串,数据以键/值对的形式传递。

public function validateform(Request $request) { $input = $request->getContent(); echo $input; }

输出

上述代码的输出是

_token=367OQ9dozmWlnhu6sSs9IvHN7XWa6YKpSnnWrBXx&name=Rasika+Desai&email=rasika%40gmail.com&age=20&address=Pune

示例 4

使用 php://input

这将返回来自 URL 查询字符串中的输入字段的数据。

$data = file_get_contents('php://input'); print_r($data);

输出

上述代码的输出是 −

_token=367OQ9dozmWlnhu6sSs9IvHN7XWa6YKpSnnWrBXx&name=Rasika+Desai&email=rasika%40gmail.com&age=20&address=Pune

相关文章