От автора: для того чтобы произвести в Laravel запросы URL-адреса, используется метод «path». Метод «is» используется для извлечения запрошенного URL-адреса, который соответствует конкретному шаблону, указанному в аргументе метода. Чтобы получить полный URL-адрес, мы можем использовать метод «url».
Пример
Шаг 1 — Выполните следующую команду, чтобы создать новый контроллер с именем UriController.
1 |
php artisan make:controller UriController –plain |
Шаг 2 — После выполнения URL-адреса вы получите следующий результат:
Шаг 3 — После создания контроллера добавьте следующий код в этот файл. app/Http/Controllers/UriController.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
<?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){ // Использование метода path $path = $request->path(); echo 'Path Method: '.$path; echo '<br>'; // Использование метода is $pattern = $request->is('foo/*'); echo 'is Method: '.$pattern; echo '<br>'; // Использование метода url $url = $request->url(); echo 'URL method: '.$url; } } |
Шаг 4 — Добавьте следующую строку в файл app/Http/route.php.
1 |
Route::get('/foo/bar','UriController@index'); |
Шаг 5 – Перейдите по следующему URL-адресу. //localhost:8000/foo/bar
Шаг 6 – В результате вы должны получить следующее:
Извлечение введенных данных
Laravel позволяет легко извлекать вводимые значения. Независимо от того, какой метод использовался «get» или «post», метод Laravel будет получать введенные значения для обоих методов одинаково. Существует два способа получить введенные значения.
Использование метода input()
Использование свойств экземпляра запроса
Использование метода input()
Метод input() принимает один аргумент — имя поля в форме. Например, если форма содержит поле username, мы можем получить к нему доступ следующим образом.
1 |
$name = $request->input('username'); |
Использование свойств экземпляра запроса
Подобно методу input(), мы можем получить свойство username непосредственно из экземпляра запроса.
1 |
$request->username |
Пример
Шаг 1 — Создайте форму регистрации, через которую пользователь может зарегистрироваться, и сохраните ее в файле resources/views/register.php.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
<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.
1 |
php artisan make:controller UserRegistration --plain |
Шаг 3 — После выполнения этой команды, вы получите следующий результат:
Шаг 4 — Скопируйте следующий код в контроллер app/Http/Controllers/UserRegistration.php.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
<?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){ //Извлекаем данные поля name $name = $request->input('name'); echo 'Name: '.$name; echo '<br>'; //Извлекаем данные поля username $username = $request->username; echo 'Username: '.$username; echo '<br>'; //Извлекаем данные поля password $password = $request->password; echo 'Password: '.$password; } } |
Шаг 5 — Добавьте в файл app/Http/routes.php следующую строку.
1 2 3 4 |
Route::get('/register',function(){ return view('register'); }); Route::post('/user/register',array('uses'=>'UserRegistration@postRegister')); |
Шаг 6 – Перейдите по следующему URL-адресу, у вас должна отобразиться форма регистрации, как показано на рисунке ниже. Введите свои данные и нажмите кнопку «Register», и на второй странице, которую мы создали и извлекли, вы должны увидеть эти регистрационные данные. //localhost:8000/register
Шаг 7 – В результате вы должны получить примерно следующее:
Источник: //www.tutorialspoint.com/
Редакция: Команда webformyself.