Php 使用array()在codeigniter中加载多个库。第一个图书馆有效,但第二个图书馆无效;T

Php 使用array()在codeigniter中加载多个库。第一个图书馆有效,但第二个图书馆无效;T,php,codeigniter,Php,Codeigniter,我正在从主控制器中加载两个控制器,只有第一个控制器加载 class App extends CI_Controller { public function index() { $this->load->library(array('../controllers/effects', '../controllers/ingredients')); $data['ingredients']

我正在从主控制器中加载两个控制器,只有第一个控制器加载

class App extends CI_Controller {

    public function index() {
        $this->load->library(array('../controllers/effects', 
                             '../controllers/ingredients'));
        $data['ingredients'] = $this->ingredients->get_all();
        $data['effects'] = $this->effects->get_all();

        $this->load->view('header');      
        $this->load->view('main', $data);
        $this->load->view('footer');

    }
}
我收到错误消息:未定义属性:App:$contracents。如果我像这样切换两个路径字符串

$this->load->library(array('../controllers/ingredients', '../controllers/effects'));

然后它说效果是未定义的,所以看起来它总是加载第一个控制器,而不是第二个。我也尝试过自动加载它们,但是我遇到了一个错误,比如“嵌套函数超出了限制”之类的错误。我做错了什么,我怎样才能解决这个问题?

你应该按照手册上的说明去做

您应该将库文件放在库文件夹中,并使用加载库

$this->load->library('name')


你应该按照手册上说的去做

您应该将库文件放在库文件夹中,并使用加载库

$this->load->library('name')


将您的库文件放入
CI

现在,您可以在控制器中加载库

$this->load->library('library_name');
在数组中加载多个库的步骤

$this->load->library(array('library_name_1', 'library_name_2'));
也可以在config/autoload.php中自动加载库

$autoload['libraries'] = array('library_name_1', 'library_name_2');

将您的库文件放入
CI

现在,您可以在控制器中加载库

$this->load->library('library_name');
在数组中加载多个库的步骤

$this->load->library(array('library_name_1', 'library_name_2'));
也可以在config/autoload.php中自动加载库

$autoload['libraries'] = array('library_name_1', 'library_name_2');

您是否尝试将库放在
libraries
文件夹而不是
controllers
文件夹中?另外,只要库名称就足够了,不需要路径。您是否尝试将库放在
文件夹而不是
控制器
文件夹中?另外,只需库名称就足够了,不需要路径。