0
我想創建一個路線routes.php
可以處理可選的無限子路徑。Laravel路線與一個可選的子路徑
Route::get('/path/{url}', function($url){
echo $url;
});
URL的可以是以下:
/path/part1
/path/part1/part2
/path/part1/part2/part3
etc.
但因爲URL中的一個子路徑不匹配的/
,所以什麼也沒發生。 (當然,echo $url
僅用於測試)。
我現在用的一招避免這種情況,通過使用~
代替/
的子路徑,然後取代他們算賬,但我想知道是否有更好的方法這樣我就可以在URL中使用的/
。
UPDATE
找到了解決辦法,這要歸功於馬克:
Route::get('/path/{all}', function($url){
echo $url;
})->where('all', '.*');
http://stackoverflow.com/questions/13297278/laravel-using-any-wildcard-for-all-routes可能會回答你的問題。 –
(:任何)在Laravel 5中似乎不起作用? {any}和{all}確實有效,但不匹配它看起來的子路徑... – Dylan
{any}和{all}沒有什麼特別之處,因爲它們只是普通的路由參數。 –