我最终决定升级我的CI,我遵循此用户指南CodeIgniter用户指南2.1.4版
但最后,当我试图加载我的网页时,我得到了这样的错误
Fatal error: Class 'MY_Controller' not found in
C:'xampp'htdocs'myfolder'system'application'controllers'home.php on line 6
在home.php中,第6行是class Home extends MY_Controller {
我在中有一个名为My_controller.php的文件
C:'xampp'htdocs'myfolder'system'application'libraries
这是文件:
<?php
class MY_Controller extends Controller {
var $needLogin = FALSE;
var $rakunpanel = FALSE;
function __construct() {
parent::__construct();
$isVisited = $this->session->userdata('visited');
if($isVisited !== '1'){
$this->session->set_userdata('visited', '1');
redirect('welcome');
}
if($this->rakunpanel === TRUE){
$this->needLogin = TRUE;
$this->layout->setLayout('folderAdmin/layout_admin');
}
if($this->needLogin === TRUE && !$this->tank_auth->is_logged_in()){
redirect(ADMIN_PATH.'auth/login/');
}
}
function is_ajax() {
return (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest'));
}
}
这对我来说很难,因为我必须按照步骤从CI版本1.7.2升级到2.1.4有什么建议吗,为什么会发生这种情况?谢谢你的建议。
首先:将My_controller.php
重命名为MY_Controller.php
。
第二步:将父类名称更改为CI_Controller
:
class MY_Controller extends CI_Controller { ... }
最后将MY_Controller.php
文件放入application/core
文件夹中。
来自用户指南:
例如,要扩展本机Input类,您将创建一个文件命名为
application/core/MY_Input.php
,并用声明您的类
class MY_Input extends CI_Input {
}
新版本的CI控制器定义:MY_controller类扩展了CI_Controller