0

我想使用 Doctrine 的 preflush 功能根据其他元素的值自动设置表单元素的值。我的 ZF2 实体中的 preflush 语句可能如下所示:

/**
 * set eventEndDate = eventStartDate for single-day events on pre flush.
 *
 * @ORM\PreFlush
 * @return void
 */
public function onPreFlush(PreFlushEventArgs $args)
{
    $currentEventType = $this->getEventType();

    if ($currentEventType=='meeting') {
        $this->eventEndDate = $this->getEventStartDate();
    }

}

我的挑战是我没有getEventType()getter,因为 eventType 是我的继承映射中的鉴别器列。实体中的预刷新函数如何评估实体内部的鉴别器值?

4

1 回答 1

2

您可以使用instanceofphp 运算符来检查对象的类。像那样:

if ($this instanceof MeetingEntityClass) {
    //...
}
于 2015-03-09T19:43:58.387 回答