Публикации - Маршрутизация Laravel

Параметры маршрутов

Добавление к маршруту обязательного параметра id:

Добавление к маршруту обязательного параметра id. Листинг 2.1

Route::get('user/{id}', function ($id) {

return 'User '.$id;

});

Добавление к маршруту необязательного параметра name.

Добавление к маршруту необязательного параметра name. Листинг 2.2

Route::get('user/{name?}', function ($name = null) {

return $name;

});

Вместо $name = null можно использовать любое значение по умолчанию.

Добавление к маршруту необязательного параметра name. Листинг 2.3

Route::get('user/{name?}', function ($name =’Jhon’) {

return $name;

});

Использование регулярных выражений в маршрутах.

Маршруты с соответствием пути регулярному выражению. Листинг 2.4

Route::get('user/{name}', function ($name) {

})->where('name', '[A-Za-z]+');

Route::get('user/{id}', function ($id) {

})->where('id', '[0-9]+');

Вместо последовательного вызова метода where, можно передать массив ограничений.

Использование массива в регулярных вырражениях. Листинг 2.5

Route::get('user/{id}/{name}', function ($name) {

})->where(['name'=>'[A-Za-z]+', ‘id’=>'[0-9]+']);

 

Если какие-то регулярные выражения нужно связать со всеми параметрами, то можно использовать метод pattern:

Использование шаблона регулярного выражения. Листинг 2.6

public function boot(Router $router)

{

$router->pattern('id', '[0-9]+');

 

parent::boot($router);

}

Таким образом, будет осуществляться проверка всех параметров с именем id.

Количество комментариев: 0

Для того, чтобы оставить коментарий необходимо зарегистрироваться