提问人:Salvio 提问时间:7/6/2020 最后编辑:PhilSalvio 更新时间:7/6/2020 访问量:100
使用 composer 的 PSR-4 自动加载机问题
Problem with PSR-4 Autoloader using composer
问:
我有这个目录结构:
src
- PrintXMLInfo.php
- PrintListInfo.php
- PrintInformation.php
vendor
main.php
composer.json
现在在 composer.json 年,我宣布了这个 psr-4 自动加载:
"autoload": {
"psr-4": {
"TemplateMethod\\": "src/"
}
}
在抽象类 PrintInformation 中,我放了:
namespace TemplateMethod;
abstract class PrintInformation
并在 PrintXMLInfo 和 PrintListInfo 中扩展了它
namespace TemplateMethod;
use TemplateMethod\PrintInformation;
class PrintXMLInfo extends PrintInformation
在 PrintListInfo 中也是如此。
问题是“使用 TemplateMethod\PrintInformation”;
我在 PrintInformation 的同一命名空间中,但如果我写:
use PrintInformation;
我收到未找到类的错误:
PHP Fatal error: Class 'PrintInformation' not found in /home/vagrant/shared/template_method/src/PrintXMLInfo.php on line 6
我无法理解我错的地方,如果父类和子类在同一个命名空间中,我不应该在没有使用命名空间前缀的情况下调用它们,对吧?
答: 暂无答案
评论
use
use