Есть ли способ, чтобы «сказать» PEAR XML_Serializer, какие свойства он должен сериализовать как атрибут, а какие как подэлемент?
Например:
class User {
public $id;
public $name;
public $address;
}
Должен быть сериализован так:
<User id="0">
<name>John Doe</name>
<address></address>
</User>
Я думал об использовании опции «XML_SERIALIZER_OPTION_SCALAR_AS_ATTRIBUTES», но, к сожалению, мне нужны некоторые скаляры в качестве атрибута и некоторые в качестве подэлемента.
Есть ли способ сообщить XML_Serializer, как он должен сериализовать свойства исходного класса?
Сделали обзор кода и получили решение:
$serializer->setOption(
XML_SERIALIZER_OPTION_SCALAR_AS_ATTRIBUTES => array(
"User" => array("id")
)
);
Делает трюк … все будет сериализовано как XML-элемент, но свойство «id» пользовательского элемента будет сериализовано как атрибут
Других решений пока нет …