Can't use the method return value in write context
-
02-07-2021 - |
Вопрос
I'm using codeigniter and trying to make an if statement for if the controllers have changed. What I have right now gives the error.
if (isset($this->session->userdata('lastUrl')) && $this->session->userdata('lastUrl') != $this->router->class) {
echo 'new controller';
}
$this->session->set_userdata('lastUrl', $this->router->class);
This code is in the constructor of the controller so it will be run on every page.
Решение
isset
is a special language construct that can only be used on variables or array keys, not methods. This should have the same functionality:
$this->session->userdata('lastUrl') !== null && ...
Другие советы
you can check this by method_exists()
function
if (method_exists($this->session->userdata('lastUrl')) && $this->session->userdata('lastUrl') != $this->router->class) {
echo 'new controller';
}
Не связан с StackOverflow