РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
466 of 1392 menu

Метод merge

Метод merge класса Request применяется к объекту запроса и позволяет объединить массив данных с существующими данными запроса. Первым параметром передаётся ассоциативный массив данных, которые будут добавлены или перезапишут существующие ключи в запросе. Метод возвращает изменённый объект запроса, позволяя использовать цепочки методов.

Синтаксис

<?php $request->merge(array $data); ?>

Пример

Давайте добавим в запрос новое поле 'role' со значением 'admin':

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class UserController extends Controller { public function store(Request $request) { $request->merge(['role' => 'admin']); $res = $request->all(); echo json_encode($res); } } ?>

Результат выполнения кода:

{"name":"John","email":"john@mail.com","role":"admin"}

Пример

Давайте перезапишем существующее поле 'status' на новое значение 'active':

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class PostController extends Controller { public function update(Request $request) { $request->merge(['status' => 'active']); $res = $request->only(['status', 'title']); echo json_encode($res); } } ?>

Результат выполнения кода:

{"status":"active","title":"New Post"}

Пример

Давайте объединим несколько полей в запросе с помощью одного вызова метода:

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class ProfileController extends Controller { public function update(Request $request) { $request->merge([ 'updated_at' => now()->toDateTimeString(), 'is_verified' => true ]); $res = $request->only(['name', 'updated_at', 'is_verified']); echo json_encode($res); } } ?>

Результат выполнения кода:

{"name":"Jane","updated_at":"2026-09-08 10:30:00","is_verified":true}

Пример

Давайте используем метод merge вместе с другими методами для обработки запроса:

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class ArticleController extends Controller { public function store(Request $request) { $request->merge([ 'user_id' => auth()->id(), 'published' => false ]); $res = $request->only(['title', 'content', 'user_id', 'published']); // $res now contains merged data return json_encode($res); } } ?>

Результат выполнения кода:

{"title":"New Article","content":"Article content","user_id":1,"published":false}

Смотрите также

  • метод all,
    который возвращает все данные запроса
  • метод only,
    который возвращает только указанные поля из запроса
  • метод except,
    который исключает указанные поля из запроса
  • метод has,
    который проверяет наличие поля в запросе
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить