4

当我尝试加载 MY_Log 时,我看到整个应用程序日志文件中出现以下错误。

错误 - 26-03-2013 22:52:20—> 严重性:警告 —> include_once(application/core/MY_Log.php) [function.include-once]:无法打开流:没有这样的文件或目录 C:\开发\我的站点\应用程序\配置\config.php 377

我的自动加载文件有以下内容:

$autoload['libraries'] = array('parser', 'session', 'log'); 

MY_Log 类在 application/libraries/MY_Log.php 中定义

class MY_Log extends CI_Log 

位于 application/libraries/MY_Parser.php 中的 MY_Parser 类可以正常加载。

class MY_Parser extends CI_Parser 

当我调试加载程序以查看为什么 Parser 的行为与 Log 不同时,它似乎在应用程序/核心中查找 MY_Log,但在应用程序/库中查找(并找到)MY_Parser ok。

我正在使用 CI 2.1.1

任何想法为什么会有这种差异?

4

1 回答 1

1

当您扩展核心库时,CI_Log不会自动加载它。为什么?因为 CI_Log 是由 CI Core 自动加载的。CI_Parser (不熟悉这个)不是核心库,所以这就是它从application/libraries.

只是不要将它包含在您的自动加载数组()中

此外,请考虑更新您的 CI 版本(如果您还没有)以利用最新的安全补丁/修复。

于 2014-01-07T04:46:56.907 回答