如何使用Codeigniter重写URL?

时间:2019-02-18 04:46:05

标签: php codeigniter

在Codeigniter中如何重写URL?

我已经尝试过这样更改路线:

 const navigateAction = StackActions.reset({
            index: 0,
            key: null,
            actions: [NavigationActions.navigate({ routeName: 'Login' })]
        })
        this.props.navigation.dispatch(navigateAction)

但是仍然没有任何改变。

$route['backend/user/profile/(:num)/'] = 'backend/user/profile/$1/$2';

请帮助我解决此问题。 谢谢。

2 个答案:

答案 0 :(得分:1)

如果最后一个参数是字符串,则可以为此使用(:any)

$route['backend/user/profile/(:num)/(:any)']  = 'backend/user/profile/$1';

答案 1 :(得分:0)

如果第二个参数是可选的,则可以尝试

在您的路线中:

$route['backend/user/profile/(:num)'] = 'backend/user/profile/$1';
$route['backend/user/profile/(:num)/(:string)'] = 'backend/user/profile/$1/$2';

,然后在您的控制器中,为函数的第二个参数提供默认值

public function profile( $id , $stat = 'disabled' ) {
  // your code ..
}

因此,如果URL中省略了第二个参数($stat),它将获得disabled