Skip to content
This repository has been archived by the owner on Jul 2, 2021. It is now read-only.
/ xml2array Public archive
forked from mrusca/xml2array

Converts an XML DOMDocument to an array, and back.

Notifications You must be signed in to change notification settings

rentpost/xml2array

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

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

Original XML2Array and Array2XML libraries from Lalit.org

About

Converts an XML DOMDocument to an array, and back.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 100.0%