如何在 Laravel 中提取原始表单数据?

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

为了演示上述内容,我们将使用下面的表单。它有用户名和密码字段。让我们尝试使用下面显示的方法获取原始表单数据 -


示例 1

使用 file_get_contents()

file_get_contents() 方法是内置的 PHP 函数,它将文件内容返回为字符串格式。现在要获取表单的原始数据,您可以将输入作为 php://input 提供给 file_get_contents

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class testvalidationController extends Controller { public function showform() { return view('login'); } public function validateform(Request $request) { $test = file_get_contents('php://input'); echo $test; } }

输出

上述代码的输出为 −

_token=zHuIkXpqcRqvZO4vTgxH0fFk5fCmvqSavrCjHVMi&username=testing&password=abcd

示例 2

使用 getContent() 方法。

getContent() 可用于 Request 类,它将以字符串格式返回表单数据。

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Input; class testvalidationController extends Controller { public function showform() { return view('login'); } public function validateform(Request $request) { echo Request::createFromGlobals()->getContent(); } }

输出

上述代码的输出为 −

_token=zHuIkXpqcRqvZO4vTgxH0fFk5fCmvqSavrCjHVMi&username=test&password=xya

示例 3

在 Request 类上使用 all() 方法

all() 方法将返回数组中的所有表单数据。

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Input; class testvalidationController extends Controller { public function showform() { return view('login'); } public function validateform(Request $request) { $data = Request::createFromGlobals()->all(); print_r($data); } }

输出

上述代码的输出是 −

Array (
   [_token] => zHuIkXpqcRqvZO4vTgxH0fFk5fCmvqSavrCjHVMi
   [username] => testing
   [password] => xyz
)

示例 4

使用 get() 方法

您还可以使用 Request 类提供的 get() 方法。您需要传递需要读取值的字段名称。

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Input; class testvalidationController extends Controller { public function showform() { return view('login'); } public function validateform(Request $request) { echo $username = Request::createFromGlobals()->get('username'); echo "<br/>"; echo $password = Request::createFromGlobals()->get('password'); } }

输出

上述代码的输出是 −

testing
sdsads

相关文章