考慮下列實體:學說ORM和繼承
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
類型提示),並在代碼後面能夠作出相應的響應,這取決於它是Document
還是Report
。
這也意味着,在代碼中,我需要能夠獲取任何Entity::$title
如果它是一個Document
或Entity::$level
如果它是一個Report
。
我可以通過教義來實現嗎?