dmb / xml-converter
一个允许您轻松将XML字符串转换为数组格式或将数组生成XML字符串的包。
v0.1.3
2023-09-15 15:19 UTC
Requires
- php: >=7.4
- spatie/array-to-xml: 2.17.1
Requires (Dev)
- nunomaduro/larastan: ^1.0
- orchestra/testbench: ^4.0
- phpunit/phpunit: ^8.0
README
Xml Converter - 从XML到数组及其反向转换
一个允许您轻松将XML字符串转换为数组格式或将数组生成XML字符串的包。本包基于:Spatie Array to XML 和 Gaarf XML string to PHP array。
安装
您可以通过composer安装此包
composer require dmb/xml-converter
从数组到XML
以下是一些使用示例。
默认根名称:root
$arrayConverted = (new FromArray()) ->convertToXml($arrayToConvert);
自定义根名称:customRootName
$arrayConverted = (new FromArray()) ->convertToXml( $arrayToConvert, 'customRootName' );
自定义根名称:customRootName和属性
$arrayConverted = (new FromArray()) ->convertToXml( $arrayToConvert, [ 'rootElementName' => 'customRootName', '_attributes' => [ 'xmlns' => 'https://github.com/davidemariabusi/xml-converter', ], );
所有功能示例
$arrayToConvert = [ 'First_User' => [ '_attributes' => [ 'attr1' => 'value' ], 'name' => 'Name', ], 'Second_User' => [ 'name' => 'Name 2' ], 'Third_User' => [ '_attributes' => [ 'attr2' => 'value 2' ], '_value' => 'Name 3' ] ]; $arrayConverted = (new FromArray()) ->convertToXml( $arrayToConvert, [ 'rootElementName' => 'customRootName', '_attributes' => [ 'xmlns' => 'https://github.com/davidemariabusi/xml-converter', ], ] );
结果
<?xml version="1.0"?> <customRootName xmlns="https://github.com/davidemariabusi/xml-converter"> <First_User attr1="value"> <name>Name</name> <weapon>Lightsaber</weapon> </First User> <Second_User> <name>Name2</name> </Second_User> <Third_User attr2="value 2"> Name 3 </Third_User> </customRootName>
从XML到数组
以下是一些使用示例。
有效XML
XML将被转换为数组。
try { $converted = (new FromXml()) ->convertToArray($validXml); } catch (XmlParsingExcpetion $e) { $error = $e->getMessage(); }
无效XML
将捕获XmlParsingExcpetion异常。
try { $converted = (new FromXml()) ->convertToArray($invalidXML); } catch (XmlParsingExcpetion $e) { $error = $e->getMessage(); }
变更日志
有关最近更改的更多信息,请参阅CHANGELOG。
致谢
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。