我创建了core / Admin_Controller.php,我创建了页面控制器但是当我运行页面控制器时出现错误 "致命错误:Class' Admin_Controller'在第4行和第34行的D:\ xampp \ htdocs \ myproject \ application \ controllers \ admin \ Page.php中找不到;
class Admin_Controller extends MY_Controller
{
function __construct()
{
parent::__construct();
}
}

defined('BASEPATH') OR exit('No direct script access allowed');
class Page extends Admin_Controller {
public function __construct()
{
parent::__construct();
$this->load->model('admin_m');
$this->load->model('page_m');
}
public function index(){
$data['title'] = 'Press Release';
$data['page'] = $this->page_m->show_list();
$this->load->view(THEME_DIR_ADMIN.'common/admin_header');
$this->load->view(THEME_DIR_ADMIN.'page/list', $data);
$this->load->view(THEME_DIR_ADMIN.'common/admin_footer');
}
}

答案 0 :(得分:0)
芯/ Admin_Controller.php
class Admin_Controller extends CI_Controller {
function __construct()
{
parent::__construct();
}
}
和
配置/ config.php中
$config['subclass_prefix'] = 'Admin_';
答案 1 :(得分:0)
我假设您不希望所有前缀都是Admin_
,但如果您这样做,@ Linf Lin的答案将会有效。
我会像你一样在核心目录中创建MY_Controller.php,但是我会在这个文件中添加Admin_Controller代码,就像这样;
<强> MY_Controller.php 强>
class MY_Controller extends CI_Controller {
...
}
class Admin_Controller extends MY_Controller {
}
同一个文件中的两个类都可以正常工作(这就是我在项目中的工作方式)
希望这有帮助。
答案 2 :(得分:0)
在APPPATH . 'config/config.php'
文件末尾放下一个代码:
spl_autoload_register(function ($class) {
if (substr($class,0,3) !== 'CI_') {
if (file_exists($file = APPPATH . 'core/' . $class . EXT)) {
include $file;
}
}
});