我想用 Codeigniter 路由更改 URL:這是我的網(wǎng)址:home/search?location=BDhome/search?location=BD&category[]=123home/search?location=BD&category[]=123&category[]=124&category[]=125像上面的網(wǎng)址,但我想用home/BDhome/BD/123home/BD/123+124+125 或者home/BD/123/124/125我的route.php:$route['home/(:any)/(:any)'] = 'home/search/$1';我的route.php頁面有什么問題?
1 回答

白衣非少年
TA貢獻1155條經(jīng)驗 獲得超0個贊
嘗試(.+)在您的 上使用一個模式route.php,$1它將包含location值 ( BD) 并且將包含通過url $2的每個參數(shù):home/BD/
$route['home/(:any)/(.+)'] = 'home/search/$1/$2';
(.+)如果您不知道傳遞了多少參數(shù),該模式很有用,它可以讓您捕獲所有參數(shù)。也許您應該使用&代替+您網(wǎng)址上的標志,因為+默認情況下可能不允許使用該標志:
home/BD/123&124&125
然后你可以分解控制器上的類別:
public function search($location = '', $categories = '')
{
if (!empty($categories)) {
$categories = explode('&',$categories);
}
...
}
- 1 回答
- 0 關注
- 101 瀏覽
添加回答
舉報
0/150
提交
取消