Requests

30 Августа 2021 23:00

Работа с запросами в контроллере

Допустим у нас есть контроллер следующего вида:

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class CashController extends Controller
{
  /**
   * Показать информацию в зависимости от данных из формы
   *
   * @param  Request  $request
   * @return Response
   */
  public function show(Request $request)
  {
    $year= $request->input('year');
    if(!empty($year)) {
      //
    }
  }
}

Для работы с запросами в нём нужно:

  1. Подключить класс с помощью конструкции use;
  2. Передаем параметр в метод, который будет работать с запросом, указав при этом, тип класса Request. Экземпляр класса автоматически будет создан сервис-контейнером.

Если в маршруте задана передача параметров в контроллер, например так: Route::get('cash/{year}', 'CashController@show');.  То необходимые параметры передаются, следом за $request:

public function show(Request $request, $year)
{
  if(!empty($year)) {
    //
  }
}