You map your entityproperty as DateTime type then set the value in the constructor using a new DateTime instance:
/** * @Entity * @Table(name="...") */ class MyEntity { /** @Column(type="datetime") */ protected $registration_date; public function __construct() { $this->registration_date = new DateTime(); } } This works as the constructor of a persisted class is not called upon hydration.