DanielFurmanov / laravel-formatter by DanielFurmanov
forked from SoapBox/laravel-formatter

A formatting library that converts data output between XML, CSV, JSON, TXT, YAML and a few others. And supports @attributes in XML
6,941
4
1
Package Data
Maintainer Username: DanielFurmanov
Maintainer Contact: graham@soapboxhq.com (Graham McCarthy)
Package Create Date: 2015-08-31
Package Last Update: 2017-08-30
Home Page:
Language: PHP
License: MIT
Last Refreshed: 2019-12-03 03:25:07
Package Statistics
Total Downloads: 6,941
Monthly Downloads: 266
Daily Downloads: 36
Total Stars: 4
Total Watchers: 1
Total Forks: 9
Total Open Issues: 0

Attention!

This fork was made to support encoding and '@attributes' and '@value' in xml, so that nodes (xml tags) could support attributes and native string nodes. Any credits should go to the original author of this bundle. Use at your own risk!

Formatter Bundle

Build Status

A formatter package that will help you to easily convert between various formats such as XML, JSON, CSV, etc...

Goals

The goals of this library are to allow the transfomation of data formats from one type to another. See Parsers and Formats to see supported input / output formats.

Installation

Through command line:

composer require daniel-furmanov/laravel-formatter

Through composer.json:

{
  "require": {
	"daniel-furmanov/laravel-formatter": "dev-master",
  }
}

Parsers

All of the following are supported formats that the formatter can read from.

  • Array
  • CSV
  • JSON
  • XML
  • YAML

Formats

All of the following are formats that are supported for output.

  • Array
  • CSV
  • JSON
  • XML
  • YAML

General Usage

Including The Formatter

use DanielFurmanov\Formatter\Formatter;

Supported Types

Formatter::JSON; //json
Formatter::CSV;  //csv
Formatter::XML;  //xml
Formatter::ARR;  //array
Formatter::YAML; //yaml

Making Your First Formatter(s)

$formatter = Formatter::make($jsonString, Formatter::JSON);
$formatter = Formatter::make($yamlString, Formatter::YAML);
$formatter = Formatter::make($array, Formatter::ARR);
...

Outputting From Your Formatter

$csv   = $formatter->toCsv();
$json  = $formatter->toJson();
$xml   = $formatter->toXml();
$array = $formatter->toArray();
$yaml  = $formatter->toYaml();

Deprecated Functionality

The following have been deprecated from the library, however you can easily continue using them in your application

Serialized Array

$serialized = serialize($formatter->toArray());

PHP Export

$export = var_export($formatter->toArray());