【问题标题】:Fatal error on production server, staging is OK [duplicate]生产服务器上的致命错误,暂存正常[重复]
【发布时间】:2016-02-05 15:08:11
【问题描述】:

我修复了一个基于 CodeIgniter 框架的 Web 应用程序。当我在生产服务器上建立应用程序时,我偶然发现了一个奇怪的错误。

致命错误:无法在第 77 行的 /path/to/app/application/controllers/user.php 的写入上下文中使用方法返回值

在那一行我有这个功能:

public function update_user_movement(){
        if (empty($this->input->post())){ // Line 77
            redirect('user/movement','location');
        }
        // other code
}

正如我在标题中提到的,我在登台服务器上没有收到任何错误。这是为什么呢?

编辑:我不同意这个问题是重复的,因为在其他问题中没有提到 CodeIgniter,我认为这个问题与它有关。

【问题讨论】:

  • 另外,the manual 中有一个关于此的重要说明:Prior to PHP 5.5, empty() only supports variables; anything else will result in a parse error...

标签: php codeigniter


【解决方案1】:

可能不同的服务器配置(如果您确定文件相同)。要修复它,请执行以下操作:

public function update_user_movement(){
        $post = $this->input->post();
        if (empty($post)){ // Line 77
            redirect('user/movement','location');
        }
        // other code
}

【讨论】:

  • 这可能与 PHP 版本控制有关,但这个答案正是您所需要的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-03
  • 1970-01-01
  • 2013-07-29
  • 1970-01-01
  • 2020-07-07
相关资源
最近更新 更多