在codeigniter中的url中混合使用querystring和segment

在codeigniter这个框架中,和大多数MVC框架差不多,都使用了MVC架构的基于
URL的地址分段(segment)方式,比如:
  example.com/product/search/test/2
这个方式是对于SEO很有好的,也易于分层,但对于象
example.com/product/search/?pname=test&pid=2
这样的方式,是很传统的,也有其优势的,比如传统的遗留项目中,估计不少是这样的
地址形式,那么如何将其结合在一起呢?在CI中,既可以在全局的配置中进行设置,也可以
在局部的设置中进行设置:
1)在全局中设置:
   在application/config.php 中,将
$config['uri_protocol']设置为;
$config['uri_protocol'] = "PATH_INFO";
再设置
$config['enable_query_strings'] = TRUE;

2)如果只是在某个控制器的作用范围内控制,可以这样:
  在application/config.php下设置
$config['enable_query_strings'] = FALSE;
设置
$config['uri_protocol'] = "PATH_INFO"
   再在你要控制的CONTROLLER的构造函数中,写入如下代码;
parse_str($_SERVER['QUERY_STRING'],$_GET);
即可.
 

你可能感兴趣的:(框架,mvc,PHP)