如何重写以下codeigniter网址
localhost/test_project/pages/show_page/11
到
localhost/test_project/pages/11
是否可以进一步减少:
localhost/test_project/11
感谢。
答案 0 :(得分:1)
你有几个options。这些按优先级降序排列。
routes.php
,这是处理事物的首选方式(已提供的信息,但here又是)。 说真的,除非你知道自己在做什么,否则不要覆盖CI_Router。
答案 1 :(得分:1)
您应该编辑此文件:application/config/routes.php
。
假设你有一个pages
控制器和一个show_page
方法,它接收一个id作为参数(就像你说的那样)。
您的网址就像localhost/test_project/pages/show_page/11
我假设参数始终是一个数字,因此使用here所述的通配符可以将以下内容添加到routes.php
文件中:
$route['pages/(:num)'] = "pages/show_page/$1";
因此,您的网址就像localhost/test_project/pages/3
。这就像是说如果有人试图访问localhost/test_project/pages/3
,他/她实际上就是localhost/test_project/pages/show_page/3
。
对于像localhost/test_project/3
这样的网址,您可以添加以下内容:
$route['(:num)'] = "pages/show_page/$1";