- Laravel 教程
- Laravel - 主页
- Laravel - 概述
- Laravel - 安装
- Laravel - 应用程序结构
- Laravel - 配置
- Laravel - 路由
- Laravel - 中间件
- Laravel - 命名空间
- Laravel - 控制器
- Laravel - 请求
- Laravel-Cookie
- Laravel - 响应
- Laravel - 视图
- Laravel - 刀片模板
- Laravel - 重定向
- Laravel - 使用数据库
- Laravel - 错误和日志记录
- Laravel - 表单
- Laravel - 本地化
- Laravel - 会话
- Laravel - 验证
- Laravel - 文件上传
- Laravel - 发送电子邮件
- Laravel - AJAX
- Laravel - 错误处理
- Laravel - 事件处理
- Laravel - 外观
- Laravel - 合约
- Laravel - CSRF 保护
- Laravel - 身份验证
- Laravel - 授权
- Laravel - Artisan 控制台
- Laravel - 加密
- Laravel - 哈希
- 了解发布流程
- Laravel - 访客用户门
- Laravel - Artisan 命令
- Laravel - 分页自定义
- Laravel - 转储服务器
- Laravel - 操作 URL
- Laravel 有用资源
- Laravel - 快速指南
- Laravel - 有用的资源
- Laravel - 讨论
Laravel - 请求
在本章中,您将详细了解 Laravel 中的请求。
检索请求 URI
“path”方法用于检索请求的 URI。is方法用于检索与方法参数中指定的特定模式匹配的请求的 URI 。要获取完整的 URL,我们可以使用url方法。
例子
步骤 1 - 执行以下命令创建一个名为UriController的新控制器。
php artisan make:controller UriController –plain
步骤 2 - 成功执行 URL 后,您将收到以下输出 -
步骤 3 - 创建控制器后,在该文件中添加以下代码。
应用程序/Http/Controllers/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
例子
观察以下示例以了解有关请求的更多信息 -
步骤 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/Controllers/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 - 输出将如下图所示。