Package Data | |
---|---|
Maintainer Username: | marcmascarell |
Maintainer Contact: | marcmascarell@gmail.com (Marc Mascarell) |
Package Create Date: | 2014-11-22 |
Package Last Update: | 2017-02-11 |
Home Page: | |
Language: | PHP |
License: | MIT |
Last Refreshed: | 2024-11-14 15:13:17 |
Package Statistics | |
---|---|
Total Downloads: | 1,440 |
Monthly Downloads: | 2 |
Daily Downloads: | 0 |
Total Stars: | 14 |
Total Watchers: | 4 |
Total Forks: | 1 |
Total Open Issues: | 0 |
Array manipulation. Get, set & delete keys with dot notation, also prepares an array to be put in a file (php array or json).
Require this package in your composer.json and run composer update:
composer require mascame/arrayer
$array = array(
'this' => array(
'is' => 'an',
'example'
),
'we use a' => 'normal array',
'and manipulate it' => array(
'as' => array(
'we' => array(
'want' => ':D'
)
)
),
'thats it',
'cool? :)'
);
$arrayer = new \Mascame\Arrayer\Arrayer($array);
$arrayer->set('we.use.dot.notation', array('so', 'cool.'));
$arrayer->set('this.is', 'we gonna delete this very soon...');
$arrayer->delete('this.is');
$arrayer->set('more.examples', 'test');
$arrayer->get('more.examples'); // returns 'test'
$arrayer->getArray(); // returns the modified array
Build a prepared output for file (This example uses Laravel's "File" class to put file contents):
/**
* Available options for ArrayBuilder
* [
* 'oldSyntax' => false, // use old array syntax
* 'minify' => false,
* 'indexes' => true, // Show the incremental indexes (array keys)
* 'startWithScript' => true, // start with <?php
* 'initialStatement' => 'return ',
* ]
*/
$builder = new \Mascame\Arrayer\Builder\ArrayBuilder($arrayer->getArray(), $options);
File::put('test.php', $builder->getContent()); // getContent returns a prepared output to put in a file
/**
* Available options for JsonBuilder
* [
* 'minify' => false,
* ]
*/
$builder = new \Mascame\Arrayer\Builder\JsonBuilder($arrayer->getArray(), $options);
File::put('test.json', $builder->getContent());
Thank you for considering contributing! You can contribute at any time forking the project and making a pull request.
If you need help or any kind of support, please send an e-mail to Marc Mascarell at marcmascarell@gmail.com.
MIT