使用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;?>