codeigniter正则表达式为路线中的uri slug

时间:2012-08-11 02:45:29

标签: regex codeigniter routes slug

我想从控制器my_controller调用一个函数,将两个参数传递给some_method:第一个参数是slug(即some-website-slug);第二,一个数字。这就是我想要的:

$route['my_controller/([a-z0-9]+(-[a-z0-9]+)*)/(:num)'] = "my_controller/some_method/$1/$2";

问题是,它总是传入“-slug”(即slug字符串的最后一部分)而不是数字。例如,

BASE_URL / my_controller /一些-URI-蛞蝓/ 2

它会传入“-slug”而不是数字2.正则表达式有问题还是CI?

1 个答案:

答案 0 :(得分:2)

您的正则表达式有两对(),因此(:num)实际上位于$3而不是$2