Fatal error: Call to a member function is_connected() on a non-object

Fatal error: Call to a member function is_connected() on a non-object

当我尝试 运行 我的脚本时出现此错误:

Fatal error: Call to a member function is_connected() on a non-object in C:\xampp\htdocs\DataMigrator\ci_my_app\models\ReadData_model.php on line 7

<?php
class ReadData_model extends CI_Model {
    public function get_table($target) {
        if ($target != 'sender' && $target != 'receiver') { exit('Error: Illegal parameter. Please use sender or receiver instead.'); }
        $this->load->model('Connection_model');

        if ($this->connection_model->is_connected($target)) { // This is line #7
            return $this->connection_model->get_custom_db($target)->list_tables();
        }
        else {
            return false;
        }
    }
}

is_connected():

public function is_connected($target) {
    if ($this->get_custom_db($target)) {
        return true;
    }
    else {
        $this->session->unset_userdata('connection');
        return false;
    }
}

我做错了什么?

检查 $this->connection_model 是否正确初始化。

当你调用 connection_model 时尝试将第一个字母大写,因为你加载了一个 $this->load->model('Connection_model');

所以当你使用它时应该是:

$this->Connection_model->is_connected($target))

我知道这听起来很愚蠢,但我在使用 Codeigniter 时遇到过一些像这样的怪事。