Php Codeigniter:删除特定控制器上的URI段

Php Codeigniter:删除特定控制器上的URI段,php,codeigniter,redirect,uri,Php,Codeigniter,Redirect,Uri,我有一个名为cart的控制器,它具有许多功能 我只需要针对该特定控制器,将第二段“重定向”到另一段,具体如下: http://www.domain.com/cart/music应显示cart/show/music功能 我试着做: class Cart extends MY_Controller { public function show(){ $routes['cart/musica'] = 'cart/show/$1'; //More code...

我有一个名为
cart
的控制器,它具有许多功能

我只需要针对该特定控制器,将第二段“重定向”到另一段,具体如下:

http://www.domain.com/cart/music
应显示
cart/show/music
功能

我试着做:

class Cart extends MY_Controller {

    public function show(){
        $routes['cart/musica'] = 'cart/show/$1';
        //More code...
    }

} 
这是我在其他答案上看到的,但无法使它起作用,实际上对我来说似乎不正确

此“重定向”应仅对购物车类中的某些函数有效。
如何处理此问题?

您应该将其写入
/application/config/routes.php

$route['cart/music'] = 'cart/show/$1';
注意:使用
$route
而不是
$routes

如果要设置动态,请使用类似的选项。正则表达式允许
字母数字
字符

$route['cart/([a-zA-Z0-9]+)'] = 'cart/show/$1';
或者您可以使用
any
允许所有字符,但这不符合逻辑:

$route['cart/(:any)'] = 'cart/show/$1';

您应该写入
/application/config/routes.php

$route['cart/music'] = 'cart/show/$1';
注意:使用
$route
而不是
$routes

如果要设置动态,请使用类似的选项。正则表达式允许
字母数字
字符

$route['cart/([a-zA-Z0-9]+)'] = 'cart/show/$1';
或者您可以使用
any
允许所有字符,但这不符合逻辑:

$route['cart/(:any)'] = 'cart/show/$1';

config/routes.php
中添加以下内容:

 $route['cart/(:alpha)'] = "cart/show/$1";

config/routes.php
中添加以下内容:

 $route['cart/(:alpha)'] = "cart/show/$1";

有没有办法设置一个数组?我需要它们中的一些像
cart/music
cart/books
cart/film
等等……好的,谢谢!我会尝试添加一个动态的方法来处理这个问题,但现在它可以工作了!有没有办法设置一个数组?我需要它们中的一些像
cart/music
cart/books
cart/film
等等……好的,谢谢!我会尝试添加一个动态的方法来处理这个问题,但现在它可以工作了!