vaclavvanik / xml-to-array
Convert xml to array
Installs: 2 748
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
Requires
- php: ^7.3 || ^8.0
- ext-dom: *
- ext-libxml: *
This package is auto-updated.
Last update: 2024-09-10 03:19:15 UTC
README
This package provides a very simple class to convert xml to array.
Install
You can install this package via composer.
composer require vaclavvanik/xml-to-array
Usage
use VaclavVanik\XmlToArray\XmlToArray; $xml = <<<'XML' <root> <good_guy> <name>Luke Skywalker</name> <weapon>Lightsaber</weapon> </good_guy> <good_guy> <name><![CDATA[<h1>Gandalf</h1>]]></name> <weapon>Staff</weapon> </good_guy> <bad_guy lang="Black Speech"> <name>Sauron</name> <weapon>Evil Eye</weapon> </bad_guy> </root> XML; $result = XmlToArray::stringToArray($xml);
After running this piece of code $result
will contain:
[ 'root' => [ 'good_guy' => [ [ 'name' => 'Luke Skywalker', 'weapon' => 'Lightsaber', ], [ 'name' => '<h1>Gandalf</h1>', 'weapon' => 'Staff', ], ], 'bad_guy' => [ '@attributes' => [ 'lang' => 'Black Speech', ], 'name' => 'Sauron', 'weapon' => 'Evil Eye', ], ], ];
Converting XML file is also available:
use VaclavVanik\XmlToArray\XmlToArray; $result = XmlToArray::stringToArray('my.xml');
Converting DOMDocument directly:
use DOMDocument; use VaclavVanik\XmlToArray\XmlToArray; $doc = new DOMDocument(); //$doc->loadXML(...); $xmlToArray = new XmlToArray($doc); $result = $xmlToArray->toArray();
Run check - coding standards and php-unit
make check
Changelog
Please see CHANGELOG for more information what has changed recently.
License
The MIT License (MIT). Please see License File for more information.