PSR-4 Autoloader无法识别子文件夹结构中的类
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PSR-4 Autoloader无法识别子文件夹结构中的类相关的知识,希望对你有一定的参考价值。
我使用Slim php作为我的app和composer autoload的底层框架,用于加载我的类。在作曲家我有这个psr-4配置:
"psr-4": {
"App\": "app/classes/"
}
我的所有课程都在/ app / classes /文件夹中。
在我的类文件夹中,我有所有常见的类,但我在子文件夹中有模块特定的类。
从我的../classes/connect.php文件我在相应的命名空间下有这个方法:
namespace App;
class connect
{
public function authenticate(){
officeAuthenticationManager::acquireAppToken(200);
}
}
在我的子文件夹../classes/office/我有一个名为office.php的文件,使用此方法:
namespace Appoffice;
class AuthenticationManager
{
public function acquireAppToken($tid)
{
AppAPIManagerRequestManager::sendPostRequest();
}
}
上面的方法是调用位于../classes/api.php中的另一个方法
该文件中的命名空间是
namespace AppAPIManager;
问题是,当调用最后一个方法时,我收到以下错误:“ App APIManager RequestManager”未找到...
我已经尝试用composer dump-autoload来解决这个问题,但它没有帮助。为什么会发生这种错误?
如果你想在RequestManager
命名空间中有一个名为AppAPIManager
的类,那么它必须位于APIManager/RequestManager.php
文件中。
它也适用于AuthenticationManager
类,应该移动到office/AuthenticationManager.php
以上是关于PSR-4 Autoloader无法识别子文件夹结构中的类的主要内容,如果未能解决你的问题,请参考以下文章
php PSR-4类自动加载器#php #class #autoloader
为啥父 UIStackView 无法识别子 StackView 的高度?