gpt4 book ai didi

php - 我可以从 doctrine2 中的 php 访问鉴别器字段吗?

转载 作者:IT王子 更新时间:2023-10-28 23:48:59 26 4
gpt4 key购买 nike

我有一个像这样定义继承的实体:

* @DiscriminatorColumn(name="type", type="string")
* @DiscriminatorMap({"text" = "TextAttribute", "boolean" = "BooleanAttribute", "numeric" = "NumericAttribute", "date" = "DateAttribute"})

我想知道是否可以为字段“type”设置 getter?我知道我可以使用 instanceof(在大多数情况下这就是我正在做的事情)但是很少有 $item->getType() 会让我的生活变得如此轻松的场景。

最佳答案

扩展 beberlei 所说的,您可以在 Attribute 类中声明一些常量,以及一个抽象的 getType() 函数。然后,在每个派生属性类中重载它。

类似于:

abstract class Attribute {
const TYPE_BOOL = 0;
const TYPE_INT = 1;
...
abstract public function getType();
}

class BooleanAttribute extends Attribute {
public function getType() {
return parent::TYPE_BOOL;
}
}

关于php - 我可以从 doctrine2 中的 php 访问鉴别器字段吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4450381/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com