PHP Class LSS\Array2XML
It throws exception if the tag name or attribute name has illegal chars.
Author : Lalit Patel
Website: http://www.lalit.org/lab/convert-php-array-to-xml-with-attributes
License: Apache License 2.0
http://www.apache.org/licenses/LICENSE-2.0
Version: 0.1 (10 July 2011)
Version: 0.2 (16 August 2011)
- replaced htmlentities() with htmlspecialchars() (Thanks to Liel Dulev)
- fixed a edge case where root node has a false/null/0 value. (Thanks to Liel Dulev)
Version: 0.3 (22 August 2011)
- fixed tag sanitize regex which didn't allow tagnames with single character.
Version: 0.4 (18 September 2011)
- Added support for CDATA section using @cdata instead of @value.
Version: 0.5 (07 December 2011)
- Changed logic to check numeric array indices not starting from 0.
Version: 0.6 (04 March 2012)
- Code now doesn't @cdata to be placed in an empty array
Version: 0.7 (24 March 2012)
- Reverted to version 0.5
Version: 0.8 (02 May 2012)
- Removed htmlspecialchars() before adding to text node or attributes.
Usage:
$xml = Array2XML::createXML('root_node_name', $php_array);
echo $xml->saveXML();
Show file
Open project: openlss/lib-array2xml
Class Usage Examples
Public Methods
Method |
Description |
|
createXML ( string $node_name, array $arr = [] ) : DomDocument |
Convert an Array to XML |
|
init ( $version = '1.0', $encoding = 'UTF-8', $format_output = true ) |
Initialize the root XML node [optional] |
|
Private Methods
Method |
Description |
|
bool2str ( $v ) |
*
Get string representation of boolean value |
|
convert ( string $node_name, array $arr = [] ) : DOMNode |
Convert an Array to XML. |
|
getXMLRoot ( ) |
*
Get the root XML node, if there isn't one, create it. |
|
isValidTagName ( $tag ) |
*
Check if the tag name or attribute name contains illegal characters
Ref: http://www.w3.org/TR/xml/#sec-common-syn |
|
Method Details
createXML()
public static method
public static createXML ( string $node_name, array $arr = [] ) : DomDocument |
$node_name |
string |
- name of the root node to be converted |
$arr |
array |
- aray to be converterd |
return |
DomDocument |
|
init()
public static method
Initialize the root XML node [optional]
public static init ( $version = '1.0', $encoding = 'UTF-8', $format_output = true ) |
$version |
|
|
$encoding |
|
|
$format_output |
|
|