Easily convert valid xml to a php array.
Install via composer:
composer require Metawesome/xml-to-array
use Metawesome\XmlToArray\XmlToArray;
$xml = <<<XML
<?xml version="1.0"?>
<request>
<carrier>fedex</carrier>
<id>123</id>
<tracking_number>9205590164917312751089</tracking_number>
</request>
XML;
$array = XmlToArray::convert($xml);
// $array is:
[
'carrier' => 'fedex',
'id' => '123',
'tracking_number' => '9205590164917312751089'
];
$xml = <<<XML
<?xml version="1.0"?>
<request>
<carrier>fedex</carrier>
<id>123</id>
<tracking_number>9205590164917312751089</tracking_number>
</request>
XML;
$array = xml_to_array($xml);
// $array is:
[
'carrier' => 'fedex',
'id' => '123',
'tracking_number' => '9205590164917312751089'
];
Static method
XmlToArray::convert($xml, $outputRoot = false)
The $outputRoot
determines whether or not the php array will have a @root
key. Default is false
.
Helper
xml_to_array($xml, $outputRoot = false)
Arguments are identical to XmlToArray::convert
method.
You can run the tests with:
./vendor/bin/phpunit
The MIT License (MIT). Please see License File for more information.