微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

symfony 序列化看不到 PHP 公共 getter/setter

如何解决symfony 序列化看不到 PHP 公共 getter/setter

我创建了一个存储列和行的类,这两个都是具有额外数​​据的数组,如下所示:

<?PHP
class Table{
    private array $Columns = array();
    private array $Rows = array();
    public function setColumn(Columns $c)
    {
        array_push($this->Columns,$c);
    }
    public function getColumn(): array
    {
        return $this->Columns;
    }
    public function setRow(Rows $c)
    {
        array_push($this->Rows,$c);
    }
    public function getRow(): array
    {
        return $this->Rows;
    }
}
class Columns{
   public string $Someinfo;
   public function setSomeinfo(string $c)
    {
        $this->Someinfo= $c;
    }
    public function getSomeinfo(): int
    {
        return $this->Someinfo;
    }
}
class Rows{
   public string $Someinfo;
      public function setSomeinfo(string $c)
    {
        $this->Someinfo= $c;
    }
    public function getSomeinfo(): int
    {
        return $this->Someinfo;
    }
}
?>

我的 Symfony 序列化器在它公开时看到并使用这个类,但是当我把它变成私有时它突然停止工作。

Symfony 序列化器:

$serializer = new Serializer([new Objectnormalizer()],[new JsonEncoder()]);
        return $serializer->deserialize($data,$table,'json');

我尝试了几乎所有类型的 set、get 和 adders,但没有一个有效或由序列化程序触发。该文档有一些示例,但它们与我在章节中的代码相同:反序列化对象。 https://symfony.com/doc/current/components/serializer.html#component-serializer-attributes-groups

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。