我正在尝试在 xampp 的命名空间下自动加载 php 类。但由于某种原因,它无法在其绝对路径下找到类。
这是我的自动加载器:
spl_autoload_register(function($className){
require_once($_SERVER["DOCUMENT_ROOT"] .'/' . str_replace('\\', '/', $className). '.php');
})
这是我的类(class)namespace app\admin\modules\smartForm;
class smartForm {
/* Class logic*/
}
这是我的文件系统:这是我得到的错误:
警告:require_once(C:/xampp/htdocs/app/admin/modules/smartForm/smartForm.php):无法打开流:C:\xampp\htdocs\php\smartfrom\app\system\中没有这样的文件或目录第 3 行的 autoLoader.php
最佳答案
看起来 3 天后我终于弄明白了。
您可以从自动加载器文件中选择相对路径,而不是通过绝对路径。
这里是最后的包括:
include_once(__DIR__.'\..\\'.$className.'.php');
关于xampp 上的 PHP 自动加载命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69713010/