编码器
编辑本页警告:您正在浏览的文档欧宝官网下载appob娱乐下载Symfony 3.0,现已不再维护。
读本页的更新版本用于Syob娱乐下载mfony 6.2(当前稳定版本)。
编码器
编码器基本上是转动的数组成格式反之亦然。它们实现EncoderInterface用于编码(数组格式化)和DecoderInterface用于解码(格式到数组)。
你可以通过使用Serializer实例的第二个构造函数参数来添加新的编码器:
1 2 3 4 5 6
使用ob娱乐下载\组件\序列化器\序列化器;使用ob娱乐下载\组件\序列化器\编码器\XmlEncoder;使用ob娱乐下载\组件\序列化器\编码器\JsonEncoder;$编码器=数组(新XmlEncoder (),新JsonEncoder ());$序列化器=新序列化器(数组(),$编码器);
内置编码器
上面的例子中使用了两个编码器:
- XmlEncoder编码/解码XML
- JsonEncoder编码/解码JSON
的XmlEncoder
这个编码器将数组转换为XML,反之亦然。
例如,取一个对象,规范化如下:
1
数组(“foo”= >数组(1,2),“酒吧”= >真正的);
的XmlEncoder
将像这样编码这个对象:
1 2 3 4 5 6
<?xml version =“1.0”? ><回答> < foo >1< / foo > < foo >2> < / foo > <酒吧1< /酒吧> < /响应>
请注意,此编码器将考虑以@
属性:
1 2 3 4 5 6 7
$编码器=新XmlEncoder ();$编码器->编码(数组(“foo”= >数组(“@bar”= >“价值”)));//返回://<?xml version = " 1.0 "? >/ /响应> <// ./ / < /响应>
的JsonEncoder
的JsonEncoder
是简单得多,是基于PHPjson_encode而且json_decode功能。
此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。