Php JMS序列化期间使用的是什么方法?

Php JMS序列化期间使用的是什么方法?,php,symfony,jmsserializerbundle,Php,Symfony,Jmsserializerbundle,我正在修改一个使用Symfony 2.7和JMS序列化程序的API。我有一个包含一些图像数据的实体。在我的实体定义中,相关字段注释如下: /** * @var string * * @ORM\Column(name="images_data", type="text") * @JMS\Groups({"default", "playlist", "digital_signage", "distributed_item"}) * @JMS\Type("array") * @JMS\Ac

我正在修改一个使用Symfony 2.7和JMS序列化程序的API。我有一个包含一些图像数据的实体。在我的实体定义中,相关字段注释如下:

/**
 * @var string
 *
 * @ORM\Column(name="images_data", type="text")
 * @JMS\Groups({"default", "playlist", "digital_signage", "distributed_item"})
 * @JMS\Type("array")
 * @JMS\Accessor(getter="getImagesDataDecode")
 * @JMS\SerializedName("imagesData")
 */
private $imagesData;
。。。我将getImagesDataDecode()方法更改为如下所示:

public function getImagesDataDecode()
{
    return ['testone'=>'a','testtwo'=>'b'];
}
。。。但是在测试期间,我的API端点不会返回新的测试数组。我只能得出结论,在API响应期间没有使用getImagesDataDecode()方法

如何找出返回API数据的方法?


我希望让我的程序在返回有问题的数据之前做一些分析和过滤。没有插入该逻辑的位置,看起来我暂时运气不佳。

您缺少告诉序列化程序使用访问器方法的
@JMS\AccessType
注释。它默认为
属性
,因此它不使用任何方法,而是通过反射使用属性本身


您是否尝试过调试和跟踪发出呼叫的曲目?并在getImagesDataDecode()方法上添加一个断点。感谢您的评论。我尝试在getImagesDataCode()中放置断点,但该方法未被调用。这让我无法确定如何继续。嗯,看起来该方法没有被调用。在你修改代码之前,它被调用了吗?