url - Codeigniter _remap 函数

标签 url codeigniter codeigniter-url

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

就像当我打开这些网址时,它们会打开我的个人资料: http://www.facebook.com/buddyforever 或者 http://www.myspace.com/zarpio

如何使用 CodeIgniter 做到这一点?我检查了 _remap 功能,但是第一个 Controller 如何隐藏 Controller ?

最佳答案

您可以使用 codeigniter 的 URL 路由来做到这一点...

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

/config/routes.php

$route['(.*)'] = "your_controller/$1"; // Now, `zarpio` will be passed to `your_controller`

您可以像这样在 Controller 中访问它...

$my_name = $this->uri->rsegment(2);

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

$route['users/(.*)'] = "your_controller/$1";

这样,您只需将 Controller 名称 your_controller 重命名为 users

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

$route['users/profile/(.*)'] = "another_controller/method/$1";
$route['users/(.*)'] = "your_controller/$1";

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

更多信息见 codeigniter URI class documentation

关于url - Codeigniter _remap 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3614705/

相关文章:

ios - .shop-domain 快捷方式在 iOS Safari 上不起作用

mysql - 使用 Codeigniter 从同一个表进行多个 SQL 连接

php - 如何自动关闭截断段落中的标签

php - 在 Codeigniter 中编辑记录时加载 View

php - 路由到 CodeIgniter 中的多个子文件夹

json - 未使用初始化程序的结果

java - Java 中的 HTTP 响应代码

java - 当其中包含空格时,无法构建有效的 URL

php - 如何在 CodeIgniter 中为多个 Hook 使用同一个对象?

CSS 在我的 CodeIgniter 元素中不起作用,但为什么呢?