我有一个有多种语言的网站。对于我的新闻页面,我有两条规则将分页变量路由到我的控制器。一种用于所有语言(en、ct、cs、kr),一种用于默认语言。
路由.php
$route['^(en|ct|cs|kr)/news/page/(:num)'] = 'news/index/$1';
$route['news/page/(:num)'] = 'news/index/$1';
新闻控制器
public function index($id)
{
echo $id;
}
路由正在访问新闻控制器,但$id
参数未传递给index()
方法。
如果我回显它,$id
它将返回语言段而不是我期望的分页变量:
mysite.com/en/news/page/2 // $id 返回“en”。
mysite.com/kr/news/page/2 // $id 返回“kr”。
当我为每种语言单独编写路由时,它会起作用:
$route['en/news/page/(:num)'] = 'news/index/$1';
我的正则表达式在某个地方出错了吗?