rafrsr / lib-array2xml
Array2XML conversion library
Installs: 31 303
Dependents: 1
Suggesters: 0
Security: 0
Stars: 2
Watchers: 2
Forks: 0
Open Issues: 2
Requires
- php: >=5.4
Requires (Dev)
- phpunit/phpunit: ^4.4
- satooshi/php-coveralls: ^1.0
This package is auto-updated.
Last update: 2024-12-15 11:46:11 UTC
README
XML2Array is a class to convert XML to an array in PHP. It returns an array which can be converted back to XML using the Array2XML class.
It can take a string XML as input or an object of type DOMDocument.
Installation
- Install composer
- Execute:
composer require rafrsr/lib-array2xml
Usage
The usage is pretty simple. You have to include the class file in your code and call the following function.
$array = XML2Array::createArray($xml); print_r($array);
Example
The Following XML:
<?xml version="1.0" encoding="UTF-8"?> <movies type="documentary"> <movie> <title>PHP: Behind the Parser</title> <characters> <character> <name>Ms. Coder</name> <actor>Onlivia Actora</actor> </character> <character> <name>Mr. Coder</name> <actor>El ActÓr</actor> </character> </characters> <plot><![CDATA[So, this language. It's like, a programming language. Or is it a scripting language? All is revealed in this thrilling horror spoof of a documentary.]]></plot> <great-lines> <line>PHP solves all my web problems</line> </great-lines> <rating type="thumbs">7</rating> <rating type="stars">5</rating> </movie> </movies>
will generate the following output:
array ( 'movies' => array ( 'movie' => array ( 'title' => 'PHP: Behind the Parser', 'characters' => array ( 'character' => array ( 0 => array ( 'name' => 'Ms. Coder', 'actor' => 'Onlivia Actora', ), 1 => array ( 'name' => 'Mr. Coder', 'actor' => 'El ActÓr', ), ), ), 'plot' => array ( '@cdata' => 'So, this language. It\'s like, a programming language. Or is it a scripting language? All is revealed in this thrilling horror spoof of a documentary.', ), 'great-lines' => array ( 'line' => 'PHP solves all my web problems', ), 'rating' => array ( 0 => array ( '@value' => '7', '@attributes' => array ( 'type' => 'thumbs', ), ), 1 => array ( '@value' => '5', '@attributes' => array ( 'type' => 'stars', ), ), ), ), '@attributes' => array ( 'type' => 'documentary', ), ), )
References
This class is based on http://www.lalit.org/lab/convert-xml-to-array-in-php-xml2array/ with some minor bug fixed and support for php7
Copyright
This project is licensed under the MIT license.