xampp 上的 PHP 自动加载命名空间

标签 php xampp namespaces autoload

我正在尝试在 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*/
}
这是我的文件系统:
This is my file system
这是我得到的错误:
警告: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/

相关文章:

php - 向回访者和新访问者显示不同的消息

php - 创建论坛灯泡(未读)系统的最有效方法是什么?

单独文件中的 C# 命名空间/类在查看时导致错误

xml - Delphi - IXMLNode 中的命名空间 URI 无效

c++ - #include <windows.h> 在全局命名空间中定义了很多符号,比如 Polygon

javascript - 按钮点击jquery后显示div

java - 使用jar使用php脚本生成文件

apache - 在 apache 中的根路径(XAMPP)

php - 如何配置 XAMPP 从本地主机发送邮件?

php - brew install php56-mongo 命令不工作