XML Document Parser for Laravel and PHP

v3.7.0 2018-09-13 05:33 UTC


Parser Component is a framework agnostic package that provide a simple way to parse XML to array without having to write a complex logic.

Build Status Latest Stable Version Total Downloads Latest Unstable Version License Coverage Status

Imagine if you can parse

    <user followers="5">


$user = [
    'id' => '1',
    'email' => 'crynobone@gmail.com',
    'followers' => '5'

by just writing this:

use Orchestra\Parser\Xml\Facade as XmlParser;

$xml = XmlParser::load('path/to/above.xml');
$user = $xml->parse([
    'id' => ['uses' => 'user.id'],
    'email' => ['uses' => 'user.email'],
    'followers' => ['uses' => 'user::followers'],

Table of Content

Version Compatibility

Laravel Parser
4.x.x 2.x.x
5.0.x 3.0.x
5.1.x 3.1.x
5.2.x 3.2.x
5.3.x 3.3.x
5.4.x 3.4.x
5.5.x 3.5.x
5.6.x 3.6.x
5.7.x 3.7.x


To install through composer, simply put the following in your composer.json file:

    "require": {
        "orchestra/parser": "~3.0"

And then run composer install from the terminal.

Quick Installation

Above installation can also be simplify by using the following command:

composer require "orchestra/parser=~3.0"


Next add the service provider in config/app.php.

'providers' => [

    // ...



You might want to add Orchestra\Parser\Xml\Facade to class aliases in config/app.php:

'aliases' => [

    // ...

    'XmlParser' => Orchestra\Parser\Xml\Facade::class,