ironedge/file-utils

dev-master / 1.0.x-dev 2015-12-28 20:43 UTC

README

Build Status Dependency Status Reference Status

Description

This component allows you to load, save, encode and decode files of different types on a very simple way.

Currently supported formats:

  • JSON
  • YAML

See the roadmap to know which other file types will be supported in future versions.

Usage

To open a file, use the following code:


use IronEdge\Component\FileUtils\File\Factory;

$factory = new Factory();

// $file will be an instance of a subclass of \IronEdge\Component\FileUtils\File\Base .
// It detects the file type by its extension, and creates an instance of the appropiate
// class, if it's available.

$file = $factory->createInstance('/path/to/your/file');

// File contents are lazy loaded and decoded. When you call the "getContents" method, it opens
// the file and decodes its data.

$data = $file->getContents();

// Suppose we've open a JSON file with contents {"myParam": "myValue"}

print_r($data);

// It would print

Array
(
    [myParam] => myValue
)

// If you need to update the file

$data['myParam'] = 'newValue !';

$file->setContents($data);

$file->save();

Roadmap

  • XML Handling.