在PHP自动加载中添加快捷方式会导致Laravel上发生冲突
我想问您,为什么在将此添加到composer.json后出现冲突错误:在PHP自动加载中添加快捷方式会导致Laravel上发生冲突,php,laravel,composer-php,autoload,psr-4,Php,Laravel,Composer Php,Autoload,Psr 4,我想问您,为什么在将此添加到composer.json后出现冲突错误: "autoload": { "psr-4": { "App\\": "app/", "Models\\": "app/Models/", "Controllers\\": "app/Http/Controllers/" }, ... } 并为其中的所有内容命名,如“app\Models\People\Admin.php”be namespace Mod
"autoload": {
"psr-4": {
"App\\": "app/",
"Models\\": "app/Models/",
"Controllers\\": "app/Http/Controllers/"
},
...
}
并为其中的所有内容命名,如“app\Models\People\Admin.php”be
namespace Models\People;
我以前找过这个问题,但运气不好,我错过了什么吗
谢谢大家! 之所以出现此错误,是因为自动加载器首先包括
App\
下的所有类,这也包括App\Models
和App\Controllers
下的所有类,然后重新包括这些类,从而导致此冲突
为了说明这一点,以下是正在发生的情况:
app
目录下的所有类app/Models/People/Admin.php
和包含它
app/
下的所有类后,它开始在app/Models
下查找类文件,找到Admin.php
类文件并再次包含它class Admin{}
类管理{}
您能向我们显示完整的错误消息吗?@RaedYakoubi最后一条错误消息如下:无法声明class Models\People\Admin,因为该名称已在使用中