3

我使用 Codeigniter 作为我的 PHP 框架。当我运行实际 API 时,我得到了结果,但有 PHP 警告。

Severity: Warning 

Message: include(/home/bwilson/public_html/factual/CI_DB.php): failed to open stream: No such file or directory 

Filename: factual/Factual.php 

Line Number: 217 

Severity: Warning 

Message: include(): Failed opening '/home/bwilson/public_html/factual/CI_DB.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') 

Filename: factual/Factual.php 

Line Number: 217 

我看了一下 factual.php 文件中的第 217 行,它显示:

include dirname(__FILE__)."/".$className . ".php"; 

指的是什么?我在没有运行 Factual API 和控制器加载查找的情况下对此进行了测试。只有当我开始使用 Factual API 时。

这是我从 Factual 收到的回复:

驱动程序使用 SPL 自动加载功能来动态包含已卸载类的文件。

在这里,CI_DB 类——一个 Codeigniter 类,而不是 Factual——在没有被加载的情况下被调用。这会在最终尝试加载文件时触发我们的自动加载功能。

简而言之:这不是事实驱动程序问题;要解决此问题,请确保正确加载包含 CI_DB 类的文件。

4

3 回答 3

1

它只是试图CI_DB.php在与factual.php.

确保该文件确实存在于它试图找到它的位置。注意文件名是什么大小写。

如果文件确实存在于它应该存在的位置,请检查其权限。

于 2012-05-03T14:58:22.367 回答
0

查找错误后返回不受支持的模块。index.php我只是通过将错误报告设置为生产来禁用文件中的错误报告。同时,只要我的结果相同,我就可以接受。

感谢所有做出贡献的人。

于 2012-05-03T19:23:23.057 回答
-1

你用吗?:

require_once BASEPATH . "/{$className}.php";
于 2012-05-03T17:21:57.500 回答