我有一个 symfony 5 项目。
我遇到了自动加载的问题。
我使用框架提供的默认自动加载配置。
我在同一个命名空间下的同一个目录中定义了类、抽象类和接口。
问题是,当我这样描述我的班级时:
class MyClass extends MyAbstractClass
class MyAbstractClass implements MyClassInterface
我收到自动加载错误:
Attempted to load class "MyClass" from namespace "App\Entities".
Did you forget a "use" statement for another namespace?
日志中的一行:
Error thrown while running command "myproject:mycommand". Message: "Class 'App\Entities\MyClass' not found" ...
如果我使用:
class MyClass extends MyAbstractClass
或者
class MyClass implements MyClassInterface
或者
class MyClass extends MyAbstractClass implements MyClassInterface
然后错误消失了 - 一切正常。
仅当我使用时才会出现错误
class MyAbstractClass implements MyClassInterface
如何解决问题?
我需要使该抽象类实现一个接口,因此任何将扩展 AbstractClass 的类都将与该接口兼容。
PHP 7.4.1 (cli)