CodeIgniter如何从URL中获取参数值

3

我该如何在Codeigniter中从以下URL中的控制器中接收值?

http://localhost/directory/c_service/get_radius/lang=123

控制器:

class C_service extends CI_Controller {
function __construct()
{
parent::__construct();
}

public function get_radius()
{

i need to get the vLUE 123 here
like,
`$value=$get['lang'];`

}

谢谢


你的控制器名是什么?你打算接收什么值? - DhruvPathak
抱歉,我的控制器名称是"c_service",而"get_radius"是控制器中的一个函数。我需要在"get_radius"函数内接收值123。 - youv
4个回答

16

激活XSS仅在您想要在用户浏览器中显示值时才有用。否则它是无用的,这就是为什么默认情况下它未被激活的原因。 - Nico

8

在config/autoload.php中启用url helper

$autoload['helper'] = array('url');

在所需的控制器或其方法中加载URL助手。
$this->load->helper('url');

然后在控制器中使用以下内容。
$this->uri->segment(3);

以上代码将获取第一个参数,增加值将获取其他参数。

$this->uri->segment(4);

将使您得到第二位,以此类推。

希望这能帮助您。


7
在CodeIgniter中,您可以简单地执行以下操作:
public function get_radius($lang)
{
   var_dump($lang); //will output "lang=123"
}

所以,如果您不想执行explode('=', $lang)来获取值,您的链接可以简化为http://localhost/directory/c_service/get_radius/123
但是,如果链接没有参数打开,您应该考虑添加一个默认值public function get_radius($lang=0)
添加更多变量就像public function get_radius($lang, $other)一样容易,对于http://localhost/directory/c_service/get_radius/123/other

2

我管理它并检查它是否正常工作。首先加载网址。

$this->load->helper('url');
$this->uri->segment(3);

例子:http://localhost/schoolmanagement/student/studentviewlist/541

如果您使用$this->uri->segment(3);,您将获得id值(541)。

上述行将为您获取第一个参数,增加数值将为您获取其他参数。

$this->uri->segment(4);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接