我正在尝试通过允许用户从Web界面中选择要序列化的字段来获取某种自定义API创建。
一种可能的解决方案是允许用户创建等效的JMS序列化组。
有没有办法在运行时配置JMS组,以便我可以调用以下内容?
$serializer->serialize(new X(), 'json', SerializationContext::create()->setGroups(array('my_custom_group')));
答案 0 :(得分:1)
您可以使用
interface ExclusionStrategyInterface
{
public function shouldSkipClass(ClassMetadata $metadata, Context $context);
public function shouldSkipProperty(PropertyMetadata $property, Context $context);
}
如何使用此非常广泛的示例请查看此链接:
http://jolicode.com/blog/how-to-implement-your-own-fields-inclusion-rules-with-jms-serializer