Symfony序列化程序XML属性
我想使用symfonyxml序列化程序来转换类实例(而不是数组)。例如,我想创建一个类似这样的XML,其属性为myAtt=“foo” 以及下面的初始化Symfony序列化程序XML属性,xml,symfony,serialization,Xml,Symfony,Serialization,我想使用symfonyxml序列化程序来转换类实例(而不是数组)。例如,我想创建一个类似这样的XML,其属性为myAtt=“foo” 以及下面的初始化 use Symfony\Component\Serializer\Encoder\JsonEncoder; use Symfony\Component\Serializer\NameConverter\MetadataAwareNameConverter; use Symfony\Component\Serializer\Normalizer\O
use Symfony\Component\Serializer\Encoder\JsonEncoder;
use Symfony\Component\Serializer\NameConverter\MetadataAwareNameConverter;
use Symfony\Component\Serializer\Normalizer\ObjectNormalizer;
use Symfony\Component\Serializer\Serializer;
use Symfony\Component\Serializer\Encoder\XmlEncoder;
use Symfony\Component\Serializer\Mapping\Factory\ClassMetadataFactory;
use Symfony\Component\Serializer\Mapping\Loader\AnnotationLoader;
use Doctrine\Common\Annotations\AnnotationReader;
$classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader()));
$metadataAwareNameConverter = new MetadataAwareNameConverter($classMetadataFactory);
$serializer = new Serializer(
[new ObjectNormalizer($classMetadataFactory, $metadataAwareNameConverter)],
['json' => new JsonEncoder(), 'xml' => new XmlEncoder()]
);
有人知道如何添加myAtt属性吗
谢谢
这将生成以下XML
<?xml version="1.0"?>
<REQ>
<TravelAgencySender>
<CityName>town</CityName>
<AgencyID>agency</AgencyID>
</TravelAgencySender>
</REQ>
镇
机构
以@开头的数组键被视为XML属性:
['foo' => ['@bar' => 'value']];
编码如下:
<?xml version="1.0"?>
<response>
<foo bar="value"/>
</response>
以@开头的数组键被视为XML属性:
['foo' => ['@bar' => 'value']];
编码如下:
<?xml version="1.0"?>
<response>
<foo bar="value"/>
</response>
如果可以,请转到JMSSerializer捆绑包。属性为的示例是。如果可以,请转到JMSSerializer包。属性为的示例如下。