Skip to content
PHP Class that parses XML objects
Branch: master
Clone or download
Latest commit 1651a6a Mar 18, 2016
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib/XMLParser Merge pull request #10 from nimasdj/master Mar 18, 2016
tests Update example2.php Aug 4, 2015
.gitignore 0.0.0 Mar 24, 2014
LICENSE.md Added license Jul 31, 2015
README.md Update README.md Aug 6, 2015
composer.json Merge pull request #10 from nimasdj/master Mar 18, 2016

README.md

XMLParser

I needed a quick way of outputting XML from an associative array on a few projects -this was the end result. I created this repository for later reference and fellow devs. At the time, It served it's purpose, however I am not actively developing this project -see the Contributing section.

Table of contents

Installation

  • composer require jtrumbull/xml-parser

##Usage

header('Content-type: text/xml');

use XMLParser\XMLParser;

$data = array(
  'attr:status'=>'success',
  'Person'=>array(
    'attr:id'=>987654321,
    'First Name'=>'John',
    'Last Name'=>'Smith'
  ),
  'Address'=>array(
    'attr:'=>array(
      'geo-coded'=>TRUE,
      'lat'=>'0.0000',
      'lon'=>'-0.0000'
    ),
    'Street'=>'123 Main Street',
    'City'=>'Somewhere',
    'State'=>'DE',
    'Zip'=>'12345'
  ),
  'other'=>array(
    'key'=>'value',
    array('value1','value2','value3')
  )
);

$xml = XMLParser::encode( $data , 'response' );
echo $xml->asXML();

Will output:

<response status="success">
  <person id="987654321">
    <first_name>John</first_name>
    <last_name>Smith</last_name>
  </person>
  <address geo-coded="TRUE" lat="0.0000" lon="-0.0000">
    <street>123 Main Street</street>
    <city>Somewhere</city>
    <state>DE</state>
    <zip>12345</zip>
  </address>
  <other>
    <key>value</key>
    <list>
      <item>value1</item>
      <item>value2</item>
      <item>value3</item>
    </list>
  </other>
</response>

Documentation

XMLParser\XMLParser::encode()

Syntax:

SimpleXMLElement XMLParser::encode( mixed $data [, string $root] )

Returns: SimpleXMLElement

XMLParser\XMLParser::decode()

Syntax:

json XMLParser::decode( mixed $string )

Returns: json

Contributing

Check out the issue tracker, if your issue or feature request has not addressed open a new issue. All pull requests are welcome.

Community

Copyright and license

XML parser is distributed under the MIT License -see LICENSE.md

You can’t perform that action at this time.