Php codeigniter URI中的限制参数
我面临codeigniter URI路由的问题 我有一条这样的路线: 网站。本地/terms/SOMEINFORMATIONID/SOMECURRENCY 其中SOMEINFORMATIONID和SOMECURRENCY是URI参数 问题是,当我调用website.local/terms/SOMEINFORMATIONID/SOMECURRENCY/sdfsdfsd 这意味着,我引入了第三个参数,URI仍然有效,但我想要的是,当路由使用2个以上的参数“执行”时,得到一个404错误 我试图在codeigniter文档中找到一些东西,但我什么也找不到,反正我不知道应该查找什么(codeigniter uri参数有限,等等) 作为补充信息,我的路线在routes.php中如下所示:Php codeigniter URI中的限制参数,php,codeigniter,Php,Codeigniter,我面临codeigniter URI路由的问题 我有一条这样的路线: 网站。本地/terms/SOMEINFORMATIONID/SOMECURRENCY 其中SOMEINFORMATIONID和SOMECURRENCY是URI参数 问题是,当我调用website.local/terms/SOMEINFORMATIONID/SOMECURRENCY/sdfsdfsd 这意味着,我引入了第三个参数,URI仍然有效,但我想要的是,当路由使用2个以上的参数“执行”时,得到一个404错误 我试图在cod
$route['terms/(:any)/(:any)'] = 'xxx/terms/$1/$2';
在控制器中:
//检查段
$sdf= $this->uri->segment(4);
if ( ! empty($sdf)) $this->my404();
和功能
public function my404 () {
$this->output->set_status_header('404');
$data['error'] = 'Not Found...'
$this->smarty->view( 'error.tpl', $data);
}
如果您使用的是ci3,您可以在最后添加一条路由,如
$ route ['(. +)'] = 'error_page'; // all the url´s that you don't have before will display the error you want
这也是一种做法。在不创建routehi的情况下,如果您使用的是ci3,您可以最后再添加一条路由,如
$route['(.+)]='error_page'代码>//所有你以前没有的url都会显示你想要的错误,这是一个很好的解决方案,我认为它更符合我的要求,但我不能将评论标记为有效答案:(因此,如果你在帖子上发布答案,我会将其标记为“接受答案”