orchestra / parser
XML Document Parser for Laravel and PHP
Fund package maintenance!
Liberapay
paypal.me/crynobone
Requires
- php: ^8.0
- illuminate/container: ^10.0
- laravie/parser: ^2.3
Requires (Dev)
- laravel/pint: ^1.4
- orchestra/testbench: ^8.0
- phpstan/phpstan: ^1.9.14
- phpunit/phpunit: ^10.0.7
This package is auto-updated.
Last update: 2024-02-24 13:02:22 UTC
README
Parser Component is a framework agnostic package that provide a simple way to parse XML to array without having to write a complex logic.
Imagine if you can parse
<api> <user followers="5"> <id>1</id> <email>crynobone@gmail.com</email> </user> </api>
to
$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'], ]);
Version Compatibility
Laravel | Parser |
---|---|
6.x | 4.x |
7.x | 5.x |
8.x | 6.x |
9.x | 7.x |
10.x | 8.x |
Installation
To install through composer, run the following command from terminal:
composer require "orchestra/parser"
Configuration
Next add the service provider in config/app.php
.
'providers' => [ // ... Orchestra\Parser\XmlServiceProvider::class, ],
Aliases
You might want to add Orchestra\Parser\Xml\Facade
to class aliases in config/app.php
:
'aliases' => [ // ... 'XmlParser' => Orchestra\Parser\Xml\Facade::class, ],