我想要实现的目标
我希望抓住(例如)http://www.my-domain/Цезаря-Цезаря-1
,我的代码会将其转换为http://www.my-domain/{slug}-{id}
现在的问题是:
我尝试了什么
我现在用{any}
抓住了slu ..但是我宁愿只把它包含在[a-z0-9-]+
< - 这适用于拉丁语。但我还想添加西里尔语。
答案 0 :(得分:1)
它似乎没有问题。
例如:
Route::get('Б/{x}', function($x) {
return "Route found. x is $x";
});
当我运行网址http://domain/Б/Ж-Зa
时,我得到的输出是Route found. x is Ж-Зa
修改强>
您可以使用以下规则:
Route::get('{slug}-{id}', function($slug, $id) {
return "route found<br />slug is {$slug}<br />id is $id";
})->where('slug', '[^/]*')->where('id', '\d*');
甚至:
Route::get('{slug}-{id}', function($slug, $id) {
return "route found<br />slug is {$slug}<br />id is $id";
})->where('slug', '.*')->where('id', '\d*');
两种情况的结果都是:
route found
slug is Цезаря-Цезаря
id is 1