# Ограничения параметров маршрутов в Laravel

Как правило мы бы хотели наложить на параметры маршрутов некоторые ограничения. Давайте посмотрим на примере. Пусть у нас есть следующий маршрут:

`<?php Route::get('/post/{id}', function ($id) { return 'пост ' . $id; }); ?>`

Очевидно, что `id` должен быть числом. Однако, сейчас наш маршрут не следит за этим и поймает любой адрес такого вида, например, `/post/eee`.

Давайте наложим ограничение на наш параметр. Это делается с помощью метода `where` и регулярных выражений:

`<?php Route::get('/post/{id}', function ($id) { return 'пост ' . $id; })->where('id', '[0-9]+'); ?>`

Сделайте маршрут вида `/user/:id`, где вместо `:id` должно быть число.

Попробуйте обратиться через браузер к этому маршруту, передав параметром число.

Попробуйте обратиться через браузер к этому маршруту, передав параметром не число. Расскажите, что будет.

←→
↑