Php 在codeigniter中重写URL
如何重写以下codeigniter urlPhp 在codeigniter中重写URL,php,url,codeigniter,mod-rewrite,Php,Url,Codeigniter,Mod Rewrite,如何重写以下codeigniter url localhost/test_project/pages/show_page/11 到 是否有可能进一步减少,如: localhost/test_project/11 谢谢。你有一些。这些是按优先级降序排列的 首先是routes.php,这是处理事情的一般首选方式(已经提供了信息,但仍然是) 您还可以将_resolve方法添加到控制器(这意味着CI需要首先访问您的控制器),并且 最后,您可以重写CI_路由器库,该类实际上返回要转到的路由 说真的,除
localhost/test_project/pages/show_page/11
到
是否有可能进一步减少,如:
localhost/test_project/11
谢谢。你有一些。这些是按优先级降序排列的
routes.php
,这是处理事情的一般首选方式(已经提供了信息,但仍然是)说真的,除非你知道自己在做什么,否则不要覆盖CI_路由器。你应该编辑这个文件:
application/config/routes.php
假设您有一个pages
控制器和一个show\u page
方法,其中接收一个id作为参数(正如您所说的)
您的URL类似于localhost/test\u project/pages/show\u page/11
我假设该参数始终是一个数字,因此使用所述的通配符,可以将以下内容添加到routes.php
文件中:
$route['pages/(:num)'] = "pages/show_page/$1";
因此,您的URL将类似于localhost/test\u project/pages/3
。这就像说,如果有人试图访问localhost/test\u project/pages/3
,他/她实际上指的是localhost/test\u project/pages/show\u page/3
对于像localhost/test\u project/3这样的URL,您可以添加以下内容:
$route['(:num)'] = "pages/show_page/$1";
请参阅中的“设置您自己的路由规则”
$route['(:num)'] = "pages/show_page/$1";