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

Метод put

Метод put класса Route применяется для регистрации маршрутов, которые обрабатывают HTTP-запросы с методом PUT. PUT-запросы обычно используются для полного обновления ресурса на сервере. Первым параметром передаётся URI маршрута, вторым - действие (контроллер или замыкание), которое будет обработано при совпадении. Метод возвращает экземпляр Route для построения цепочек дополнительных настроек.

Синтаксис

<?php use Illuminate\Support\Facades\Route; Route::put($uri, $action); ?>

Пример

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

<?php use Illuminate\Support\Facades\Route; use Illuminate\Http\Request; Route::put('/user/{id}', function (Request $request, $id) { // Логика обновления пользователя return "User with ID {$id} updated successfully"; }); ?>

Результат выполнения кода при отправке PUT-запроса на /update-user/1:

"User with ID 1 updated successfully"

Пример

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

<?php use Illuminate\Support\Facades\Route; use App\Http\Controllers\ArticleController; Route::put('/articles/{id}', [ArticleController::class, 'update']); ?>
<?php namespace App\Http\Controllers; use App\Models\Article; use Illuminate\Http\Request; class ArticleController extends Controller { public function update(Request $request, $id) { $article = Article::findOrFail($id); $article->title = $request->input('title'); $article->text = $request->input('text'); $article->save(); return $article; } } ?>

Результат выполнения кода при обновлении статьи с id равным 1:

{ "id": 1, "title": "Updated article", "text": "Updated content", "updated_at": "2026-09-08T10:30:00.000000Z" }

Пример

Давайте зарегистрируем маршрут с ограничениями на параметр через where:

<?php use Illuminate\Support\Facades\Route; use App\Http\Controllers\CategoryController; Route::put('/category/{id}', [CategoryController::class, 'update']) ->where('id', '[0-9]+') ->name('category.update'); ?>
<?php namespace App\Http\Controllers; use App\Models\Category; use Illuminate\Http\Request; class CategoryController extends Controller { public function update(Request $request, $id) { $category = Category::findOrFail($id); $category->name = $request->input('name'); $category->save(); return response()->json([ 'message' => 'Category updated', 'category' => $category ]); } } ?>

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

{ "message": "Category updated", "category": { "id": 1, "name": "New Category Name", "updated_at": "2026-09-08T10:35:00.000000Z" } }

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

  • метод get,
    который регистрирует маршрут для GET-запросов
  • метод post,
    который регистрирует маршрут для POST-запросов
  • метод patch,
    который регистрирует маршрут для PATCH-запросов (частичное обновление)
  • метод delete,
    который регистрирует маршрут для DELETE-запросов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить