我是Doctrine(和ORM)的新手。我已经生成了一些以我的数据库为模型的实体,并且效果很好。但是,我想知道是否有一种方法可以使用具有共享功能的基类扩展实体类。例如,我可以在基类中为getter和setter设置魔术方法。这可能与Doctrine 2有关吗?
例如:
/**
* Country
*
* @Table(name="country", uniqueConstraints={@UniqueConstraint(name="country_id", columns={"country_id"})})
* @Entity
*/
class Country extends MyBaseClass
{
/**
* @var integer
*
* @Column(name="country_id", type="integer")
* @Id
* @GeneratedValue
*/
protected $id;
/**
* @var string
*
* @Column(name="code", type="string", length=2, nullable=true)
*/
protected $code;
/**
* @var string
*
* @Column(name="name", type="string", length=75, nullable=true)
*/
protected $name;
}
class MyBaseClass {
public function doSomething($var) {
return $this->$var;
}
}