我正在尝试通过仅更改控制器名称来重新路由我的CodeIgniter URI,并保留任何其他段不变,无论有多少(如果有)。
我的控制器使用的是单级文件夹结构,例如 controllers / user / profile_controller.php 。
每个控制器都被称为 [name] _controller ,以区别于其他文件/类并避免冲突(即用户控制器与Tank Auth用户模型发生冲突),但我希望URI为:
/users/profile
因此,一条简单的路线(有效)将是:
$route['(:any)/(:any)'] = '$1/$2_controller';
但上面的内容不允许后续的细分,我不知道有多少。 (:any)不起作用,因为它只适用于单个段,显然我不想为潜在的段数写入多个路由,即使它很低。
我已尝试使用正则表达式来匹配URI的其余部分(例如:users / profile / edit / 123 / abc),但以下内容不起作用:
$route['(:any)/(:any)/(.+)'] = "$1/$2_controller/$3";
有没有人知道是否可以匹配其余的段并将它们放回到重新路由的URI上?
提前致谢。 垫