I have an array structure that have to be converted to MXML. I know of PEAR XML_Serialize extension but it seems the output format it produces is a bit different.
PHP generated XML:
<zone columns="3">
<select column="1" />
<select column="4" />
</zone>
MXML format:
<mx:zone columns="3">
<mx:select column="1" />
<mx:select column="4" />
</mx:zone>
Is that “mx:” prefix required for all the tags? If yes, can I make the XML_Serialize put it before each tag (without renaming my data structure fields to “mx:something”)?
Here are my options for XML_Serialize:
$aOptions = array('addDecl' => true, 'indent' => " ", 'rootName' => 'template',
'scalarAsAttributes' => true, 'mode' => 'simplexml');
You’re missing the namespace declaration in your serializer. Add a namespace to your serializer like this:
You could also add it your $aOptions array:
In regard to whether the namespace is required – this really depends on what your XML declarations look like. If the default namespace is set to MXML already, then no – its not required.