如何从 Codeigniter 中的视图获取控制器的 URL?

Posted

技术标签:

【中文标题】如何从 Codeigniter 中的视图获取控制器的 URL?【英文标题】:How do I get a controller's URL from a view in Codeigniter? 【发布时间】:2012-01-04 00:40:42 【问题描述】:

假设我在我的名为 Book 的控制器加载的视图中。

有什么方法可以让我在 View 中获取控制器的 URL,而不是手动输入:

echo base_url('book');  

【问题讨论】:

【参考方案1】:

要返回当前控制器,可以使用。

$this->router->fetch_class();

同样,如果你想返回当前方法,那么你可以使用:

$this->router->fetch_method();

【讨论】:

这正是我正在寻找的。非常感谢!【参考方案2】:

你不能这样做吗:echo current_url();

【讨论】:

当我回显 current_url();它将显示所有 URL,包括我的类、我的方法及其参数。我只需要上课。 :) 哦,在这种情况下你可以回显$this->uri->segment(1); 哦,是的!,这太明显了,我太愚蠢了 T__T,在发布问题之前必须考虑清楚。非常感谢! 用户别心疼,我问了一些非常明显的问题,我躲了 6 个月才问另一个问题 需要注意的是需要加载 URL Helper 才能使用 current_url() $this->load->helper('url');【参考方案3】:

迟到的答案。是的!更简单的方法是使用$this->uri->rsegment(n),其中 n 从 1 开始。通过使用 rsegment 而不是段,可以避免路由处理中丢失段。这个方法应该可以从视图中调用。请参考原始 uri 库文档。

【讨论】:

以上是关于如何从 Codeigniter 中的视图获取控制器的 URL?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 CodeIgniter 中的视图访问模型

显示从控制器传递的表(视图)中的数据 - Codeigniter

CodeIgniter:将参数从视图传递到控制器?

获取数据库配置设置到 codeigniter 中的控制器/视图

如何从视图中调用 codeigniter 控制器功能

codeigniter 解析模板中的内容