次のエンティティがあるとします。
class Entity {
protected $id;
}
class User extends Entity {
/** @var Entity */
protected $target;
}
class Document extends Entity {
protected $title;
}
class Report extends Entity {
protected $level;
}
User
教義がエンティティを正しくマッピングできるように、どのマッピングを作成する必要がありますか? User::$target
ここでの問題は、任意の Entityを使用できるようにしたい(したがって、型のヒント)、コードの後半で、それが aまたは aEntity
であるかどうかに応じて、それに応じて応答できるようにすることです。Document
Report
これはまた、コード内で、それが であるか、 であるかのいずれEntity::$title
かをフェッチできる必要があることを意味します。Document
Entity::$level
Report
教義でこれを達成できますか?