Skip to content

Repository files navigation

array-map

Travis CICoverage Status

The object oriented approach to working with arrays

Installation

Add a dependency to your project's composer.json:

{
"require": {
"petrgrishin/array-map": "~1.0"
}
}

Usage examples

Map

Using keys

$array = ArrayMap::create($array)
->map(function ($value, $key) {
returnarray($key => $value);
})
->getArray();

Simple

$array = ArrayMap::create($array)
->map(function ($value) {
return$value;
})
->getArray();

Merge

Recursive merge

$array = ArrayMap::create($array)
->mergeWith(array(
1 => 1,
2 => 2,
3 => array(
1 => 1,
2 => 2,
),
))
->getArray();

One level merge

$array = ArrayMap::create($array)
->mergeWith(array(
1 => 1,
2 => 2,
), false)
->getArray();

Filtering

$array = ArrayMap::create($array)
->filter(function ($value, $key) {
return$value > 10 && $key > 2;
})
->getArray();

User sort

Sort by value

$array = ArrayMap::create($array)
->userSortByValue(function ($first, $second) {
return$first < $second ? -1 : 1;
})
->getArray();

Sort by key

$array = ArrayMap::create($array)
->userSortByKey(function ($first, $second) {
return$first < $second ? -1 : 1;
})
->getArray();

Example of use

ArrayAccess class, multi array access — https://github.com/petrgrishin/array-access

About

PHP. The object oriented approach to working with arrays

Topics

Resources

Stars

12 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages