如何路由uri与破折号在codeigniter


how to route uri with dash in codeigniter

我试图在codeigniter中控制路由。

我有我的url是:www.domain.com/all-artists。如果要接受dash控制器,我需要配置下面的route.php:

 <?php $route['all-artists']  =  "all_artists";

上述路由工作。现在,我想访问这个url: www.domain.com/all-artists/x

上面uri中的"x"方法是动态的,这意味着我可以从a-z更改它。但是,这个url返回一个错误显示。

你知道如何路由这些url,甚至可以接受段(1)与虚线和包含动态方法?

我得到了这个路由:

 <?php //route.php
 $route['all-artists']          =  "all_artists";
 $route['all-artists/(:any)']  =  "all_artists/function_name/$1";
 ?>

此路由将同时接受www.domain.com/all-artistswww.domain.com/all-artists/x

RewriteRule ^([^_]*)_([^_]*_.*) $1-$2 [N]
RewriteRule ^([^_]*)_([^_]*)$ /$1-$2 [L,R=301]

使用上面类似的htaccess规则,你可以用破折号替换下划线