我正在使用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
我看了一下事实文件中的第 217 行.php它的内容如下:
include dirname(__FILE__)."/".$className . ".php";
指的是什么?我已经在没有运行事实 API 和控制器加载查找的情况下对此进行了测试。只有当我开始使用事实 API 时。
这是我从Factual收到的回复:
驱动程序采用 SPL 自动加载功能来包含以下文件 动态卸载类。
在这里,类CI_DB - 一个Codeigniter类,而不是事实 - 正在 调用时未先加载。这将触发我们的自动加载功能 在最后一次尝试加载文件时。
简而言之:这不是一个事实驱动程序问题;要解决,请确保 正确加载包含CI_DB类的文件。
它只是试图在与factual.php
相同的文件夹中查找CI_DB.php
。
确保该文件确实存在于它试图找到它的地方。注意文件名是什么大小写。
如果文件确实存在于应有的位置,请检查其权限。
查找错误后返回不受支持的模块。我刚刚通过将错误报告设置为生产来禁用index.php
文件中的错误报告。同时,只要我的结果相同,我就可以接受它。
感谢所有做出贡献的人。
你使用吗?
require_once BASEPATH . "/{$className}.php";