【发布时间】:2020-02-29 21:36:53
【问题描述】:
我的“字段”实体:
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $color;
public function getColor(): ?bool
{
return $this->color;
}
public function setColor(?bool $color): self
{
$this->color = $color;
return $this;
}
我无法更新我的私有财产:
$field = "color"
$content = 1;
$value->{$field} = $content;
我收到错误消息:
无法访问私有属性 App\Entity\Fields::$color
所以我测试了这个:
$value->setColor(1);
但我收到错误消息:
试图调用名为“setColor”的未定义方法 类“stdClass”。
当我将私有更改为公共时,一切正常。 但我就是不知道如何使用私有属性设置值。
【问题讨论】:
-
$value不是您发布部分代码的类的实例。 -
如果是实例,有没有办法在此之前检查一下?
-
instanceof构造。 -
看起来您正在尝试使用某些特定的 ORM 库...?究竟是什么?