如何使用序列化器吗

编辑该页面

警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 2.4,不再维护。

这个页面的更新版本Symfob娱乐下载ony 6.2(当前的稳定版本)。

如何使用序列化器吗

在进行序列化和反序列化对象和不同格式(例如JSON或XML)是一个非常复杂的话题。ob娱乐下载Symfony提供了序列化器组件给你一些工具,您可以利用您的解决方案。

事实上,在你开始之前,熟悉序列化器,标准化者和编码器通过阅读序列化器组件。您还应该查看JMSSerializerBundle扩大在Symfony的核心序列化器提供的功能。ob娱乐下载

激活序列化器

2.3

在Symfony的序列化器一直存在,但Symfony 2.3之前,您需要构ob娱乐下载建序列化器服务自己。

序列化器默认服务不可用。打开它,激活它在您的配置:

  • YAML
  • XML
  • PHP
1 2 3 4 5
# app / config / config.yml框架:#……序列化器:启用:真正的

添加标准化者和编码器

一旦启用,序列化器服务将在容器和将装有两个编码器(JsonEncoderXmlEncoder),但没有标准化者自己,这意味着你需要加载。

你可以加载标准化者和/或编码器通过标记他们serializer.normalizerserializer.encoder。还可以设置的优先级标记为了决定匹配的顺序。

这里有一个例子如何加载GetSetMethodNormalizer:

  • YAML
  • XML
  • PHP
1 2 3 4 5 6
# app / config / config.yml服务:get_set_method_normalizer:类:ob娱乐下载Symfony \组件\ \标准化者\ GetSetMethodNormalizer进行序列化标签:- - - - - -{名称:serializer.normalizer}

请注意

GetSetMethodNormalizer是被设计。只要你有一个圆形的对象图,当调用getter方法创建一个无限循环。你鼓励添加自己的标准化者适合你的用例。

这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。