This PHP's library provides simple data manipulaton tools and may be used for simple data analysis, transforming and reporting. For example, it provides such operations for input data as "group by", "pivot" and additional aggregate functions that may be applied to this operations.
composer require weby/sloth:v0.1
See examples folder for more info.
// examples/data.php:
$data = [
['foo' => 'one', 'bar' => 'A', 'baz' => 1],
['foo' => 'one', 'bar' => 'B', 'baz' => 2],
['foo' => 'one', 'bar' => 'C', 'baz' => 3],
['foo' => 'two', 'bar' => 'A', 'baz' => 4],
['foo' => 'two', 'bar' => 'B', 'baz' => 5],
['foo' => 'two', 'bar' => 'C', 'baz' => 6],
];
// examples/group.php:
require_once '../vendor/autoload.php';
use Weby\Sloth\Sloth;
include_once 'data.php';
Sloth::from($data)
->group('foo', 'baz')
->count()
->sum()
->avg()
->print();
// Outputs:
// foo count sum avg
// one 3 6 2
// two 3 15 5
// examples/pivot.php:
require_once '../vendor/autoload.php';
use Weby\Sloth\Sloth;
include_once 'data.php';
Sloth::from($data)
->pivot('foo', 'bar', 'baz')
->print();
// Outputs:
// foo A B C
// one 1 2 3
// two 4 5 6
Running the tests is simple:
vendor/bin/phpunit
The documentation is located in this repo's wiki.
Weby\Sloth is distributed under the MIT license.