使用MY_控制器时,CodeIgniter core不可用

使用MY_控制器时,CodeIgniter core不可用,codeigniter,Codeigniter,我正在使用core/MY_Controller.php,并将所有控制器更改为扩展MY_Controller,而不是CI_Controller。现在,CodeIgniter的所有“核心”功能在我的常规控制器上都不起作用,例如:自动加载的模型给出了一个未定义属性错误,而$this->load->……之类的东西也不起作用 core/MY_Controller.php <?php defined('BASEPATH') OR exit('No direct script access allowe

我正在使用
core/MY_Controller.php
,并将所有控制器更改为扩展
MY_Controller
,而不是
CI_Controller
。现在,CodeIgniter的所有“核心”功能在我的常规控制器上都不起作用,例如:自动加载的模型给出了一个
未定义属性
错误,而
$this->load->……
之类的东西也不起作用

core/MY_Controller.php

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class MY_Controller extends CI_Controller {

    public $test = false;

    public function __construct()
    {
        $this->test = "test";

    }
}

如果在扩展其他类的类中有一个
\u construct()
方法,那么几乎总是需要从子类调用父构造函数

尝试将此简单添加到构造函数中

public function __construct()
{
    parent::__construct();
    $this->test = "test";
}

首先在“我的控制器”中尝试此操作

<?php

class MY_Controller extends CI_Controller {

    public $data = array();

    public function __construct()
    {
        parent::__construct();
        $this->data['test'] = "test";

    }
}
看法



我认为您需要在文件开头编写
require
。希望您使用了
parent::\u construct()\u构造()
函数中的code>。
<?php

class MY_Controller extends CI_Controller {

    public $data = array();

    public function __construct()
    {
        parent::__construct();
        $this->data['test'] = "test";

    }
}
<?php


class Example extends MY_Controller 
{

    public $data = array();

    public function index() 
    {
        $this->load->view('example', $this->data);
    }

}
<?php echo $hello;?>