php包含在更高的目录中

php包含在更高的目录中,php,Php,我的目录结构如下: / index.php global.php classes/ class1.php class2.php management/ manage.php 在index.php中,我需要一次“global.php” 在global.php中,我需要foreach(glob(“classes/*”)作为$filename){require_once$filename}来要求我的所有类。稍后在global.php中,我需要实例化其中一个类 现在,我正在处

我的目录结构如下:

/
 index.php
 global.php
 classes/
   class1.php
   class2.php
 management/
   manage.php
在index.php中,我
需要一次“global.php”

在global.php中,我需要
foreach(glob(“classes/*”)作为$filename){require_once$filename}
来要求我的所有类。稍后在global.php中,我需要实例化其中一个类

现在,我正在处理网站的管理部分,因此在
management/manage.php
中,我需要访问我所有的类。如果我确实需要一次“./global.php”,那么该文件可以很好地包含在global.php中,但是稍后当我需要实例化其中一个类时,我会收到一个错误,说明找不到该类

当我处理顶级目录中的文件时,我可以毫不费力地使用global.php中的所有类。只有当我从management/manage.php中包含global.php时,才会弹出此错误,表示找不到该类。错误源在global.php中报告为一行


如何正确地包含所有必需的文件?我更愿意在global.php中只包含一次我的所有类。

您真正需要的是一个。我不是在发布答案,因为你要求的是完全不同的东西,但那是你应该做的。请参见在global.phpuse
glob(dirname(_文件).“/classes/*”
中使用绝对路径。这将基于global.phpAutoloading的位置构造一个绝对路径,如果类文件只是定义类(它们实际上应该是这样的),那么这样做会更好。如果在其中定义了其他东西,比如helper函数,那么当运行代码引用某些类时,它们会神奇地出现。这让事情有点古怪。因此,如果您决定自动加载,请确保在您始终包含的某些文件中定义了非类内容。谢谢各位,我想是时候用自动加载程序重写了