首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Codeigniter _remap函数

Codeigniter _remap函数
EN

Stack Overflow用户
提问于 2010-09-01 10:45:39
回答 1查看 2.7K关注 0票数 3

请帮助我想使用第一个URI段到我的CodeIgniter网站。

例如,当我打开这些url时,它们会打开我的个人资料:http://www.facebook.com/buddyforeverhttp://www.myspace.com/zarpio

我怎样才能用CodeIgniter做到这一点?我检查了_remap函数,但是先来的控制器如何隐藏控制器?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-09-01 12:34:08

您可以使用codeigniter的URL路由来完成此操作...

如果您希望您的URL为http://www.mydomain.com/zarpio,并且希望它引用your_controller,请执行以下操作。

/config/routes.php

代码语言:javascript
复制
$route['(.*)'] = "your_controller/$1"; // Now, `zarpio` will be passed to `your_controller`

你可以像这样在你的控制器中访问它...

代码语言:javascript
复制
$my_name = $this->uri->rsegment(2);

但是,我不建议使用这种方式来配置URL。一个更好的方法是...

代码语言:javascript
复制
$route['users/(.*)'] = "your_controller/$1";

这样,您只需将控制器名称your_controller重命名为users

如果你想访问一个用户的个人资料,你可以这样做...

代码语言:javascript
复制
$route['users/profile/(.*)'] = "another_controller/method/$1";
$route['users/(.*)'] = "your_controller/$1";

考虑路由的顺序。因为您在路由中编写了users/(.*),所以它将匹配users/zarpiousers/profile/zarpio,并将它们都路由到your_controller/$1,在profile的情况下,这将给您一个404 page not found错误。这就是为什么在路由配置中,您需要在users/(.*)之前编写users/profile/(.*)

有关更多信息,请访问codeigniter URI class documentation

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3614705

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档