【发布时间】:2014-04-10 13:37:47
【问题描述】:
我在 ./application/libraries 文件夹中创建了两个控制器,Public_Controller 和 Admin_Controller,遵循 Phil 的 Sturgeon example。
我想做的是专门自动加载 Public_Controller 和 Admin_Controller,所以我在 ./application/config.php 中创建了这个自动加载函数
function __autoload($class) {
// Autoload only Public_Controller and Admin_Controller
if (strpos($class, 'CI_') !== 0) {
$file = APPPATH . 'libraries/'. $class .'.php';
if ( file_exists($file) && is_file($file) ) {
@include_once($file);
}
}
}
我认为这个问题是我在库文件夹中包含更多文件,所以这些文件也是自动加载的,这不是我想要的。因此,我尝试对第一个 if 语句做一个小改动,如下所示:
if ( in_array($class, array('Public_Controller, Admin_Controller')) ) // instead of strpos
为了只针对这两个类,但这似乎不起作用。有什么想法我可能做错了吗?
【问题讨论】:
标签: php codeigniter codeigniter-2 autoload