0

我有一个Parent具有 2 个子实体 (FooBar) 实现SINGLE_TABLE继承的实体。

是否可以创建一个new Parent()实体并动态设置它的鉴别器foo而不是创建一个new Foo()

4

1 回答 1

0

不,没有,如果您真的需要评论中提到的场景,那么使用某种工厂方法可能会更好:

abstract class MyParent
{
    public static function fromString($type)
    {
        switch ($type) {
            case 'foo':
                return new Foo();
            case 'bar':
                return new Bar();
        }
        throw new DomainException('Unknown type: ' . $type);
    }
}
于 2012-03-29T13:48:53.900 回答