这是确切的问题。我有一个自动加载功能,其中包含一段代码如下:
if(file_exists($class_file))
{
include($class_file);
return true;
}
但是,当$class_file
设置为某个值时,我会收到包含错误:
Error String: include(includes/php/utilities/calendar_event_html.utility.php)
[function.include]: failed to open stream: No such file or directory
它适用于其他文件,当我使用调试器逐步执行此代码时,很明显PHP认为该文件存在,但似乎include
没有。有没有人知道发生了什么?
答案 0 :(得分:9)
从手册:
Note: The check is done using the real UID/GID instead of the effective one.
这意味着该文件可能存在,但是您的PHP实例运行的UID / GID可能无法访问它。我建议你查看该文件的权限。
祝你好运,答案 1 :(得分:0)
尝试添加这一部分调试代码:
echo "<pre>";
echo get_include_path();
echo "</pre>";
这将返回您当前的包含路径,您可以将其与$ class_file字符串进行比较。