Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php codeigniter URI中的限制参数_Php_Codeigniter - Fatal编程技术网

Php codeigniter URI中的限制参数

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

我面临codeigniter URI路由的问题

我有一条这样的路线:

网站。本地/terms/SOMEINFORMATIONID/SOMECURRENCY

其中SOMEINFORMATIONIDSOMECURRENCY是URI参数

问题是,当我调用website.local/terms/SOMEINFORMATIONID/SOMECURRENCY/sdfsdfsd

这意味着,我引入了第三个参数,URI仍然有效,但我想要的是,当路由使用2个以上的参数“执行”时,得到一个404错误

我试图在codeigniter文档中找到一些东西,但我什么也找不到,反正我不知道应该查找什么(codeigniter uri参数有限,等等)

作为补充信息,我的路线在routes.php中如下所示:

$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都会显示你想要的错误,这是一个很好的解决方案,我认为它更符合我的要求,但我不能将评论标记为有效答案:(因此,如果你在帖子上发布答案,我会将其标记为“接受答案”