shanyuliang / array2xml
Array to Xml tool
Installs: 1 652
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/shanyuliang/array2xml
This package is auto-updated.
Last update: 2025-12-29 03:12:41 UTC
README
Array to Xml tool.
Installing
$ composer require shanyuliang/array2xml
Usage
- normal
use Shanyuliang\Array2xml\Array2xml; $arr = [ 'aaa' => [ 'bbb' => 'ccc' ] ]; $array2xml = new Array2xml(); $result = $array2xml->generate($arr);
result
{
'code' => 0,
'errer' => '',
'data' => '<?xml version="1.0" encoding="utf-8"?>
<aaa>
<bbb>ccc</bbb>
</aaa>'
}
- Add attribute and cdata for key
use Shanyuliang\Array2xml\Array2xml; $arr = [ 'aaa' => [ 'bbb' => 'ccc', 'eee' => 'fff' ] ]; //add charset and version, default charset: utf-8 version 1.0 $array2xml = new Array2xml('utf-8', '1.0'); //add attribute for key $attribute = [ 'aaa' => [ 'xmlns' => 'https://www.shanyuliang.com', 'date' => '2019-8-31' ] ]; //add cdata for key $cdata = ['bbb']; $result = $array2xml->generate($arr, $attribute, $cdata);
result
{
'code' => 0,
'errer' => '',
'data' => '<?xml version="1.0" encoding="utf-8"?>
<aaa xmlns="https://www.shanyuliang.com" date="2019-8-31">
<bbb><![CDATA[ccc]]></bbb>
<eee>fff</eee>
</aaa>'
}
3.multiple list
use Shanyuliang\Array2xml\Array2xml; $arr = [ 'xmlHead' => [ 'A' => 'aaa', 'B' => 'bbb', 'C' => [ 'Aa' => '111', 'Ab' => '222' ], 'D|1' => [ 'D1' => 'd1' ], 'D|2' => [ 'D2' => 'd2' ] ] ]; $array2xml = new Array2xml(); $result = $array2xml->generate($arr);
result
{
'code' => 0,
'errer' => '',
'data' => '<?xml version="1.0" encoding="utf-8"?>
<xmlHead>
<A>aaa</A>
<B>bbb</B>
<C>
<Aa>111</Aa>
<Ab>222</Ab>
</C>
<D>
<D1>d1</D1>
</D>
<D>
<D2>d2</D2>
</D>
</xmlHead>'
}
Use in Laravel
public function getXml(Array2xml $array2xml) { $arr = [ 'aaa' => [ 'bbb' => 'ccc', 'eee' => 'fff' ] ]; $response = $array2xml->generate($arr); }
Service Model
public function getXml() { $arr = [ 'aaa' => [ 'bbb' => 'ccc', 'eee' => 'fff' ] ]; $response = app('array2xml')->generate($arr); }
Contributing
You can contribute in one of three ways:
- File bug reports using the issue tracker.
- Answer questions or fix bugs on the issue tracker.
- Contribute new features or update the wiki.
The code contribution process is not very formal. You just need to make sure that you follow the PSR-0, PSR-1, and PSR-2 coding guidelines. Any new code contributions must be accompanied by unit tests where applicable.
License
MIT