我正在使用带有以下URL的Codeigniter(作为样本)
domain.com/index.php/controller/method/p1/p2/p3
问题是其中一项功能有时无法返回p2。这导致了以下网址
domain.com/index.php/controller/method/p1//p3
在我的控制器中,我的方法设置如下:
public function (p1 = FALSE, p2 = FALSE, p3 = FALSE) {code}
然而,当p2如上所述为空时,突然p2不会返回false,而是返回p3而p3不会返回任何内容。为什么这样以及如何避免? (我已经进行了广泛的搜索,但似乎无法解决问题所在)
答案 0 :(得分:0)
为了防止缺少参数问题,您应该使用以下代码
制作如下所示的路线
$route['(.*)'] = 'controller/method';
.*
=>它会在方法
更新您的功能如下
public function () {
$controller = $this->uri->segment(1); // controller
$method = $this->uri->segment(2); // method
$param1 = $this->uri->segment(3); // p1
$param2 = $this->uri->segment(4); // p2
$param3 = $this->uri->segment(5); // p3
}