我已在配置文件中进行了两处更改,以便将$_GET
数组设为
$config['uri_protocol'] = "PATH_INFO";
$config['enable_query_strings'] = true;
但每当我尝试将我的代码运行为http://example.com/controller/function/$demo=demo
它重定向到默认控制器
答案 0 :(得分:2)
在CodeIgniter中启用查询字符串意味着您正在使用查询字符串传入控制器和函数,而不是从PATH INFO中解析它们。
如果您想使用默认系统来确定要使用的控制器和功能,您不希望将$config['enable_query_strings']
设置为true
。
此前的SO帖子介绍了如何在CodeIgniter中启用teh $ _GET数组:Enabling $_GET in codeigniter
我认为这就是你要做的事情。
答案 1 :(得分:1)
您还必须从config:
设置控制器和功能触发器$config['enable_query_strings'] = TRUE;
$config['controller_trigger'] = 'c';
$config['function_trigger'] = 'm';
因此,一旦启用了查询字符串,您就可以像这样访问它:
http://example.com/index.php?c=controller&m=function&demo=demo
答案 2 :(得分:1)
我自己遇到了这个问题,并且在配置文件中启用了查询字符串,我还必须在URL中传递多个参数。
有关详细信息,请参阅此答案:
Combine friendly url and query string