2015-11-17 2 views
2

, что я хочу сделать, это что-то похожее на это:Laravel 5.1 - Возможны ли множественные URI?

Route::get(['uri1','uri2'], function(){ /* these two uri's do the same thing */ }); 

ли Laravel поддержку этого? Google подвела меня к этой проблеме.

+0

Почему бы вам не попробовать и сообщить нам о результате? – jkalden

ответ

2

Вы можете использовать шаблоны маршрутов, которые поддерживают регулярные выражения. Хорошая вещь об этом является то, что URL, который они используют в настоящее время доступны для вас в качестве параметра, а также:

Route::pattern('name', 'uri1|uri2'); 
Route::get('{name}', function($name) { 
    // do something with $name 
}); 

Если вы хотите, чтобы шаблон регулярного выражения только применить к этому маршруту, а не по всему миру, вы также можете написать это примерно так:

Route::get('{name}', function ($name) { }) 
    ->where(['name' => 'uri1|uri2']); 

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

Route::pattern('name', 'uri[0-9]+'); 
Route::get('{name}', function() { }); 

Просто будьте осторожны, что ваши шаблоны регулярных выражений не слишком широк.

Смежные вопросы