Vla*_*xxx 3 xml serialization xmlserializer symfony
我使用 Symfony 3 Serializer 并通过 XmlEncoder 将对象转换为 XML。但 XmlEncoder 在 xml prolog 中没有编码类型。如何解决这个问题呢?
我可以在根元素后添加带参数的自定义属性吗?
有没有办法在根元素中设置 xmlns?
我需要这样的 XML 输出:
<?xml version="1.0" encoding="utf-8"?>
<realty-feed xmlns="http://webmaster.yandex.ru/schemas/feed/realty/2010-06">
<generation-date>2010-10-05T16:36:00+04:00</generation-date>
...
</realty-feed>
Run Code Online (Sandbox Code Playgroud)
现在我明白了:
<?xml version="1.0"?>
<realty-feed>
...
</realty-feed>
Run Code Online (Sandbox Code Playgroud)
我的序列化器代码片段:
$xmlEncoder = new XmlEncoder('realty-feed');
$normalizer = new CustomNormalizer();
$serializer = new Serializer(array($normalizer),array($xmlEncoder));
$output = $serializer->serialize($objectData, 'xml');
Run Code Online (Sandbox Code Playgroud)
<?php
$xmlEncoder = new XmlEncoder('realty-feed');
$xml = $xmlEncoder->encode([
'@xmlns' => 'http://webmaster.yandex.ru/schemas/feed/realty/2010-06',
'generation-date' => '2010-10-05T16:36:00+04:00',
], 'xml');
echo $xml;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5208 次 |
| 最近记录: |