我的框架是laravel 5.2,我的网站是Buy机票。
from:德黑兰,伊玛目霍梅尼因特(宜家),伊朗。
to:伦敦,英国。
date:航班日期。
adult:2个人,child:1人,infant:0人。
当前URL是:
http://localhost:8000/flights?from=IKA&to=LON&date=2016-11-25&adult=2&child=1&infant=0我想更改这个URL:
http://localhost:8000/flights/IKA-LON/2016-11-25/2-1-0我怎样才能达到这个目标呢?
发布于 2016-10-17 20:45:09
作为一种更严格的选择,您的路线可以这样注册:
Route::get('flights/{from}-{to}/{date}/{people}', function ($from, $to, $date, $people) {
list($adults, $children, $infants) = explode('-', $people);
dd([$from, $to, $date, $adults, $children, $infants]);
})->where([
'date'=>'\d{4}\-\d{2}\-\d{2}',
'people'=>'[0-9]+\-[0-9]+\-[0-9]+'
]);这可以确保路由在被识别为有效之前包含正确的格式设置。
发布于 2016-10-17 20:41:42
你的路线看起来就像
Route::get('/flights/{from}-{to}/{date}/{adult}-{child}-{infant}', 'YourController@details');控制器
public function details($from, $to, $date, $adult, $child, $infant)
{
}发布于 2016-10-17 20:42:53
第一步是为您创建一个新的url route。
Route::get('flights/{from}-{to}/{date}/{adult}-{child}-{infant}', 'MyController@Index');接下来,需要读取控制器中的url内容。
https://stackoverflow.com/questions/40095129
复制相似问题