无法在CodeIgniter中加载自定义库



这是我的自定义库代码

<?php 
//$ci =& get_instance();

class Menu extends CI_Controller{
function loadViews($viewName = "", $headerInfo = NULL, $pageInfo = NULL, $footerInfo = NULL){
$this->load->view('includes/header', $headerInfo);
$this->load->view($viewName, $pageInfo);
$this->load->view('includes/footer', $footerInfo);
}
}

在我的控制器中,调用这个loadViews像这个

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
require APPPATH . '/libraries/Menu.php';
class Login extends CI_Controller 
{  
public function __construct() 
{
parent::__construct();
//$this->load->database();
$this->load->model('Login_model');
$this->load->library('session');
$this->load->library('menu');
}
public function abc()
{
$this->menu->loadViews("staff_form", NULL, NULL, NULL);
}

我这么做的目的是:在Autoload中加载库,创建$CI实例,并尝试过,但没有成功

应放置在application/libraries/Menu.php

<?php 
class Menu{ //this is not a controller !
$ci =& get_instance();
function loadViews($viewName = "", $headerInfo = NULL, $pageInfo = NULL, $footerInfo = NULL){
$ci->load->view('includes/header', $headerInfo);
$ci->load->view($viewName, $pageInfo);
$ci->load->view('includes/footer', $footerInfo);
}
}
?>

可能是,您还需要查看Output类文档。

但是,我建议从控制器加载视图。这是一项不需要的额外工作。您可以在控制器中创建一个函数,而不是创建一个新库。

最新更新