Codeigniter从url获取参数

时间:2015-11-12 22:30:56

标签: codeigniter url post

我有一个网址“http://localhost/codeigniter/index.php/manual_export/”。我需要从url获取最后一段,假设是id。例如“http://localhost/codeigniter/index.php/manual_export/2”。我需要得到最后一段“2”。

我厌倦了使用以下代码:

$id = end($this->uri->segment_array()); 

当我没有在网址中添加“2”并给我“manual_export”时,这是有效的。但是当我将id传递给url时,我收到错误“找不到您请求的页面。”。我认为这与路由有关。我该如何解决这个错误。

2 个答案:

答案 0 :(得分:1)

您应该使用:

$this->uri->segment(n);//in your case n == 2 count starts just after index.php

Docs

答案 1 :(得分:1)

另一种方法是通过定义路线,然后将其转换为参数

因此,例如,如果您的控制器名为manual_export,方法是getrecord

在文件application / routes.php

$route['manual_export/(:any)'] = "manual_export/getrecord/$1";

在您的控制器manual_export

function getrecord($id){ // etc etc }