Laravel 请求
本章讲解 Laravel 中的请求的处理方法。
检索请求URI
该 路径 方法用于检索所请求的URI。该 IS 方法用于检索其在该方法的参数指定的特定模式相匹配所请求的URI。要获得完整的URL,我们可以使用 url 方法。
例
步骤1 - 执行以下命令以创建一个名为 UriController 的新控制器。
php artisan make:controller UriController –plain
第2步 - 成功执行URL后,您将收到以下输出 -
第3步 - 创建控制器后,在该文件中添加以下代码。
应用程序/ HTTP /控制器/ UriController.php
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Http\Requests; use App\Http\Controllers\Controller; class UriController extends Controller { public function index(Request $request){ // Usage of path method $path = $request->path(); echo 'Path Method: '.$path; echo '<br>'; // Usage of is method $pattern = $request->is('foo/*'); echo 'is Method: '.$pattern; echo '<br>'; // Usage of url method $url = $request->url(); echo 'URL method: '.$url; } }
第4步 - 在 app / Http / route.php 文件中添加以下行。
应用程序/ HTTP / route.php
Route::get('/foo/bar','UriController@index');
第5步 - 访问以下URL。
http://localhost:8000/foo/bar
第6步 - 输出将如下图所示。
检索输入
输入值可以在Laravel中轻松检索。无论使用哪种方法 get 或 post ,Laravel方法都会以相同的方式检索这两种方法的输入值。有两种方法可以检索输入值。
- 使用input()方法
- 使用Request实例的属性
使用input()方法
input()方法接受一个参数,即表单中字段的名称。例如,如果表单包含用户名字段,那么我们可以通过以下方式访问它。
$name = $request->input('username');
使用Request实例的属性
和 input() 方法一样,我们可以直接从request实例获取username属性。
$request->username
例
观察以下示例以了解有关请求的更多信息 -
第1步 - 创建一个注册表单,用户可以在这里注册自己并将表单存储在 resources / views / register.php中
<html> <head> <title>Form Example</title> </head> <body> <form action = "/user/register" method = "post"> <input type = "hidden" name = "_token" value = "<?php echo csrf_token() ?>"> <table> <tr> <td>Name</td> <td><input type = "text" name = "name" /></td> </tr> <tr> <td>Username</td> <td><input type = "text" name = "username" /></td> </tr> <tr> <td>Password</td> <td><input type = "text" name = "password" /></td> </tr> <tr> <td colspan = "2" align = "center"> <input type = "submit" value = "Register" /> </td> </tr> </table> </form> </body> </html>
第2步 - 执行以下命令创建 UserRegistration 控制器。
php artisan make:controller UserRegistration --plain
第3步 - 成功执行上述步骤后,您将收到以下输出 -
第4步 - 复制下面的代码
app / Http / Controllers / UserRegistration.php 控制器。
应用程序/ HTTP /控制器/ UserRegistration.php
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Http\Requests; use App\Http\Controllers\Controller; class UserRegistration extends Controller { public function postRegister(Request $request){ //Retrieve the name input field $name = $request->input('name'); echo 'Name: '.$name; echo '<br>'; //Retrieve the username input field $username = $request->username; echo 'Username: '.$username; echo '<br>'; //Retrieve the password input field $password = $request->password; echo 'Password: '.$password; } }
第5步 - 在 app / Http / routes.php 文件中添加以下行。
应用程序/ HTTP / routes.php文件
Route::get('/register',function(){ return view('register'); }); Route::post('/user/register',array('uses'=>'UserRegistration@postRegister'));
第6步 - 访问以下URL,您将看到如下图所示的注册表单。 输入注册详情并单击注册,您将在第二页上看到我们已检索并显示用户注册详细信息。
http://localhost:8000/register
第7步 - 输出结果如下图所示。
在处理Web应用程序中的用户会话时,Cookie起着重要作用。在本章中,您将学习如何在基于Laravel的Web应用程序中使用Cookie。 创建一个CookieCookie可以由Laravel的全局 ...