This is a wrapper class implementation which I've described in this article.
You can install the package via composer:
$ composer require amitmerchant/array-utils<?php
use Amitmerchant\ArrayUtils\ArrayUtils;
// Map Array → wrapper for [array_map](https://www.php.net/manual/en/function.array-map.php)
$mappedArray = ArrayUtils::getInstance()
                    ->collect([1, 2, 3, 4])
                    ->map(function($iteration) {
                        return $iteration * 2;
                    });
print_r($mappedArray);
/*
Array
(
    [0] => 2
    [1] => 4
    [2] => 6
    [3] => 8
)
*/
// Filter Array → wrapper for [array_filter](https://www.php.net/manual/en/function.array-filter.php)
$filterArray = ArrayUtils::getInstance()
                    ->collect([1, 2, 3, 4, 5])
                    ->filter(function($iteration) {
                        return ($iteration & 1);
                    });
/*
Array
(
    [0] => 1
    [1] => 3
    [2] => 5
)
*/For more examples, check tests.
$ composer testPlease see CONTRIBUTING for details.
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
The MIT License (MIT). Please see License File for more information.