request
Глобальная функция request в Laravel служит для получения объекта текущего HTTP-запроса. Она может быть вызвана без аргументов для получения экземпляра класса Request, либо с передачей ключа для получения конкретного значения из данных запроса (GET, POST, JSON). Функция также принимает значение по умолчанию, которое будет возвращено, если запрашиваемый ключ отсутствует.
Синтаксис
<?php
// Получение объекта запроса
$request = request();
// Получение значения параметра
$value = request($key, $default = null);
?>
Пример
Давайте получим объект запроса внутри контроллера и выведем его метод запроса:
<?php
namespace AppHttpControllers;
use IlluminateHttpRequest;
class UserController extends Controller
{
public function index()
{
$req = request();
$method = $req->method();
echo $method;
}
}
?>
Результат выполнения кода:
"GET"
Пример
Давайте получим значение параметра 'name' из строки запроса:
<?php
namespace AppHttpControllers;
class UserController extends Controller
{
public function show()
{
$name = request('name');
echo $name;
}
}
?>
При обращении по адресу /users?name=John результат выполнения кода:
"John"
Пример
Давайте укажем значение по умолчанию для отсутствующего параметра:
<?php
namespace AppHttpControllers;
class UserController extends Controller
{
public function edit()
{
$res = request('country', 'default');
echo $res;
}
}
?>
Результат выполнения кода:
"default"
Пример
Давайте получим все данные запроса в виде массива:
<?php
namespace AppHttpControllers;
class UserController extends Controller
{
public function store()
{
$res = request()->all();
print_r($res);
}
}
?>
Результат выполнения кода:
[
"name" => "John",
"email" => "john@example.com",
"age" => "30"
]