PlumJsons includes readers, writers and converters for JSON strings and files. Plum is a data processing pipeline for PHP.
Developed by Florian Eckerstorfer in Vienna, Europe.
JsonFileReader
reads a.json
file from disk and decodes itJsonReader
decodes a JSON string
JsonFileWriter
encodes an object/array into JSON and saves it to diskJsonWriter
encodes an object/array into JSON and returns the string
JsonDecodeConverter
takes a JSON string and decodes itJsonEncodeConverter
takes an object/array and encodes it to JSON
You can install Plum using Composer.
$ composer require plumphp/plum-json
Please refer to the Plum documentation for more information about Plum in general.
Plum\PlumJson\JsonReader
reads a JSON string. If you want to read a .json
file checkout
JsonFileReader.
use Plum\PlumJson\JsonReader;
$reader = new JsonReader('[{'key1': 'value1', 'key2': 'value2'}]');
$reader->getIterator(); // -> \ArrayIterator
$reader->count();
Plum\PlumJson\JsonFileReader
reads a .json
file.
use Plum\PlumJson\JsonFileReader;
$reader = new JsonFileReader('foo.json');
$reader->getIterator(); // -> \ArrayIterator
$reader->count();
Plum\PlumJson\JsonFileWriter
writes the items as JSON into a file.
use Plum\PlumJson\JsonFileWriter;
$writer = new JsonFileWriter('foobar.json');
$writer->writeItem(['key1' => 'value1', 'key2' => 'value2'));
$writer->finish();
It is essential that finish()
is called, because there happens the actual writing. The prepare()
method does
nothing.
Plum\PlumJson\JsonWriter
converts the items into JSON format. Please checkout JsonFileWriter if you
want to write the JSON into a file.
use Plum\PlumJson\JsonWriter;
$writer = new JsonWriter();
$writer->writeItem(['key1' => 'value1', 'key2' => 'value2'));
echo $writer->getJson(); // [{'key1': 'value1', 'key2': 'value2'}]
Plum\PlumJson\JsonDecodeConverter
uses Braincrafted\Json to decode JSON.
use Plum\PlumJson\JsonDecodeConverter;
use Braincrafted\Json\Json;
$converter = new JsonDecodeConverter(Json::DECODE_ASSOC);
$converter->convert('{"foo": "bar"}'); // -> ['foo' => 'bar']
Plum\PlumJson\JsonEncodeConverter
uses Braincrafted\Json to encode an object
into JSON.
use Plum\PlumJson\JsonEncodeConverter;
$converter = new JsonEncodeConverter();
$converter->convert(['foo' => 'bar']); // -> '{"foo": "bar"}'
- Add
JsonDecodeConverter
- Add
JsonEncodeConverter
- Add support for ReaderFactory
- Initial release
The MIT license applies to plumphp/plum- json. For the full copyright and license information, please view the LICENSE file distributed with this source code.