致命错误:使用命名空间时找不到类

时间:2017-11-23 10:38:26

标签: php namespaces

我多次尝试使用名称空间,这是我遇到的问题。我目前正在使用Composer作为PSR-4自动加载器,我一直收到错误消息: Fatal error: Class 'API\Library\Config' not found in C:\wamp64\www\project\src\index.php on line 14

composer.json

"autoload": {
    "psr-4": {
        "API\\": "src",
        "API\\Library\\": "src/Library",
        "API\\Controllers\\": "src/Application/Controllers"
    }
}

的src / index.php的

namespace API;
include_once('vendor/autoload.php');
use API\Library\Config;
$config = new Config(); //line 18

文件夹布局如下:

folder layout

1 个答案:

答案 0 :(得分:2)

因为src是父文件夹。理想情况下,供应商与src在同一目录中。

"autoload": {
    "psr-4": {
        "API\\": "",
        "API\\Library\\": "Library",
        "API\\Controllers\\": "Application/Controllers"
    }
}

可行,或者您应重组目录。

此外,您可以省略"API\\Library\\": "Library",,因为它会被"API\\": "",

选中