3

我正在使用 codeigniter 并尝试为控制器是否已更改创建 if 语句。我现在所拥有的给出了错误。

if (isset($this->session->userdata('lastUrl')) && $this->session->userdata('lastUrl') != $this->router->class) {
     echo 'new controller';
}

$this->session->set_userdata('lastUrl', $this->router->class);

此代码位于控制器的构造函数中,因此它将在每个页面上运行。

4

2 回答 2

3

method_exists()你可以通过功能检查这个

if (method_exists($this->session->userdata('lastUrl')) && $this->session->userdata('lastUrl') != $this->router->class) {
     echo 'new controller';
}
于 2012-09-15T18:40:11.570 回答
2

isset是一种特殊的语言结构,只能用于变量或数组键,不能用于方法。这应该具有相同的功能:

$this->session->userdata('lastUrl') !== null && ...
于 2012-09-15T18:32:11.163 回答