【问题标题】:Can't use the method return value in write context不能在写上下文中使用方法返回值
【发布时间】:2012-09-08 12:43:54
【问题描述】:

我正在使用 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);

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

【问题讨论】:

标签: php codeigniter uri user-data


【解决方案1】:

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

$this->session->userdata('lastUrl') !== null && ...

【讨论】:

    【解决方案2】:

    你可以通过method_exists()函数检查这个

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-21
      • 2014-09-08
      • 2011-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多