Учебники

Laravel — Запрос

В этой главе вы подробно узнаете о запросах в Laravel.

Получение URI запроса

Метод «путь» используется для получения запрошенного URI. Метод is используется для получения запрошенного URI, который соответствует конкретному шаблону, указанному в аргументе метода. Чтобы получить полный URL, мы можем использовать метод url .

пример

Шаг 1 — Выполните приведенную ниже команду, чтобы создать новый контроллер с именем UriController .

php artisan make:controller UriController –plain

Шаг 2. После успешного выполнения URL вы получите следующий вывод:

UriController

Шаг 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 () , мы можем получить свойство username непосредственно из экземпляра запроса.

$request->username

пример

Обратите внимание на следующий пример, чтобы лучше понять запросы.

Шаг 1 — Создайте форму регистрации, где пользователь может зарегистрироваться и сохранить форму в ресурсах / 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 / rout.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 — Вывод будет выглядеть примерно так, как показано ниже на следующих изображениях.