Php &引用;没有这样的文件或目录;尝试包含文件时

Php &引用;没有这样的文件或目录;尝试包含文件时,php,Php,今天我遇到了一个小问题,我试图调用php类中的函数(Auth.php->GetNumOnline()) 我试图从一个处理我所有“统计信息”的类中调用它 这是我的密码: 统计类 class statReciever { public function GetNumOnline() { set_include_path("{$_SERVER['DOCUMENT_ROOT']}"); include("../Authentication/Auth.php"); $auth =

今天我遇到了一个小问题,我试图调用php类中的函数(Auth.php->GetNumOnline())

我试图从一个处理我所有“统计信息”的类中调用它

这是我的密码: 统计类

class statReciever
{

public function GetNumOnline()
{
    set_include_path("{$_SERVER['DOCUMENT_ROOT']}");
    include("../Authentication/Auth.php");
    $auth = new Auth();
    return $auth->NumOnline();
}
}
这里是Auth类的精简版本

class Auth
{
 public function NumOnline()
 {
    return 0;
 }
}
以下是我的目录截图:

以下是我收到的错误: [Sun Mar 10 14:35:25 2013][error][client MASKED]PHP警告:包括(../../Authentication/Auth.PHP):无法打开流:第16行的/var/www/example.com/public_html/includes/statReciever.PHP中没有此类文件或目录,请参考:

有人知道怎么解决这个问题吗


谢谢

include_路径总是从第一个脚本的工作目录计算出来的

使用
\uuuu DIR\uuuu
始终使用类的目录作为基本路径

include(__DIR__ . "/../Authentication/Auth.php");
您始终可以使用:

include($_SERVER['DOCUMENT_ROOT'].'/projectFolder/Authentication/Auth.php');
包括您的文件

当您的项目在
index.php
中启动时,您希望包含一个包含另一个文件的文件。。。然后确保另一个的文件路径是绝对的!(基于
index.php
location)

例如,我有一个名为
config.php
的常量文件,我总是在其中定义如下变量:

define('PROJECT_LOCATION', $_SERVER['DOCUMENT_ROOT'].'/projectFolder');
然后我用这个常数来包含我的文件,比如:

include(PROJECT_LOCATION.'/Authentication/Auth.php');

或者类似的…

是的,通过在引导中使用
spl\u autoload\u register
而不是在代码库中乱丢
include
调用Auth.php文件。。警告告诉你文件不在那个位置…@Alex,截图证明文件确实存在!如果在根目录中的main中包含“
statReciever
”。。然后,当您在编写时包含
Auth.php
。。无法找到,请检查以下内容: