【发布时间】:2012-09-23 22:14:27
【问题描述】:
我有一个包含多种语言的网站。对于我的新闻页面,我有两条规则将分页变量路由到我的控制器。一种用于所有语言(en、ct、cs、kr),一种用于默认语言。
Routes.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';
我的正则表达式有问题吗?
【问题讨论】:
标签: regex codeigniter routing