我正在使用CI 3和所有功能区域在我的本地服务器上工作。
但是当我将它上传到网站主办服务器时,它给了我这个错误:
Call to undefined method CI_Loader::template()
我的控制器“Main.php”的代码为:
class Main extends CI_Controller {
function __construct() {
parent::__construct();
/* enable session */
//$this->output->enable_profiler(TRUE);
}
public function index() {
if ( ! file_exists(APPPATH.'/views/admin/main.php'))
{
/* Whoops, we don't have a page for that! */
show_404();
}
$data['menu'] = $this->load->view('templates/menu', $data, TRUE);
$data['title'] = "EGB | Main";
$this->load->template('admin/main', $data);
//$this->load->view('admin/main', $data);
}
}
并且在“My_Loader.php”中有:
class MY_Loader extends CI_Loader {
public function template($template_name, $vars = array(), $return = FALSE)
{
if($return):
$content = $this->view('templates/header', $vars, $return);
$content .= $this->view($template_name, $vars, $return);
$content .= $this->view('templates/footer', $vars, $return);
return $content;
else:
$this->view('templates/header', $vars);
$this->view($template_name, $vars);
$this->view('templates/footer', $vars);
endif;
}
}
可能出现什么问题?
提前致谢。
答案 0 :(得分:4)
您的核心文件名应与班级名称匹配。
尝试将文件名更改为
芯/的 MY_Loader.php 强>
而不是
芯/的 My_Loader.php 强>
答案 1 :(得分:1)
必须是
MY_Loader.php
只。前缀是固定的。