Xml2array
Converts an XML DOMDocument to an array, and back.
Install / Use
/learn @mrusca/Xml2arrayREADME
Readme
Convert XML to an array representation, and then convert back to XML again.
Drop-in replacement for Lalit.org's XML2Array and Array2XML classes, based on their work.
- Configurable to use different special array keys for attributes/cdata/value
- Configurable to preserve tag and attribute namespaces
- Array to XML conversion automatically uses the root array element as the root XML node, if only one element exists at the top-level in the array
Usage Examples
Basic usage
$array = XML2Array::createArray($xml);
$xml = Array2XML::createXML($array);
Note that there's no need to specify the 'rootNode' parameter from the previous implementation. If the array contains a single root item, that will automatically be used as the root node.
Drop-in replacement
Of course, if you need a drop-in replacement, the old syntax works as before.
$array = XML2Array::createArray($xml);
$xml = Array2XML::createXML('rootNode', $array);
Preserve namespaces
$config = array(
'useNamespaces' => true,
);
$array = XML2Array::createArray($xml, $config);
Use JSON-friendly special keys
$config = array(
'attributesKey' => '$attributes',
'cdataKey' => '$cdata',
'valueKey' => '$value',
);
$array = XML2Array::createArray($xml, $config);
$xml = Array2XML::createXML($array, $config);
Further Reading
Related Skills
node-connect
339.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
83.8kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
339.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
83.8kCommit, push, and open a PR
