我正在使用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);
此代码位于控制器的构造函数中,因此它将在每个页面上运行。
答案 0 :(得分:3)
您可以通过method_exists()
功能
if (method_exists($this->session->userdata('lastUrl')) && $this->session->userdata('lastUrl') != $this->router->class) {
echo 'new controller';
}
答案 1 :(得分:2)
isset
是一种特殊的语言结构,只能用于变量或数组键,而不能用于方法。这应具有相同的功能:
$this->session->userdata('lastUrl') !== null && ...