Skip to content
/ arrays Public

Functions to extend and compliment PHP native array functionality

License

Notifications You must be signed in to change notification settings

kusabi/arrays

Repository files navigation

Extensions to PHP native arrays

Tests codecov Licence Badge Release Badge Tag Badge Issues Badge Code Size

A library that extends PHP's native array functionality

Compatibility and dependencies

This library is compatible with PHP version 7.2, 7.3, 7.4, 8.0, 8.1, 8.2 and 8.3

This library has no dependencies.

Installation

Installation is simple using composer.

composer require kusabi/arrays

Or simply add it to your composer.json file

{
    "require": {
        "kusabi/arrays": "^1.0"
    }
}

Contributing

This library follows PSR-1 & PSR-2 standards.

Unit Tests

Before pushing any changes, please ensure the unit tests are all passing.

If possible, feel free to improve coverage in a separate commit.

vendor/bin/phpunit

Code sniffer

Before pushing, please ensure you have run the code sniffer. Only run it using the lowest support PHP version (7.2)

vendor/bin/php-cs-fixer fix

Static Analyses

Before pushing, please ensure you have run the static analyses tool.

vendor/bin/phan

Benchmarks

Before pushing, please ensure you have checked the benchmarks and ensured that your code has not introduced any slowdowns.

Feel free to speed up existing code, in a separate commit.

Feel free to add more benchmarks for greater coverage, in a separate commit.

vendor/bin/phpbench run --report=speed
vendor/bin/phpbench run --report=speed --output=markdown
vendor/bin/phpbench run --report=speed --filter=benchNetFromTax --iterations=50 --revs=50000

vendor/bin/phpbench xdebug:profile
vendor/bin/phpbench xdebug:profile --gui

Documentation

This library adds a number of array functions to extend PHP's native functionality

Below you can find links to the documentation for the new features.

Function Description
array_at Get the nth value from an array
array_deflate Flattens a nested array into a single level array
array_except Return a subset of the array by passing in an array of keys to discard
array_exists Checks if the given key or index exists in the array using dot notation for nested arrays
array_first Get the first item from the array
array_from Attempt to convert an input into an array
array_get Returns a value from the array, using dot notation for nested sets
array_inflate Expands a flattened array back into a nested array
array_is_list Checks whether a given array is a list
array_join Joins entries of array into a string using optional glue substring and optional final glue substring
array_key_at Get the nth key from an array
array_last Get the last entry in the array
array_only Return a subset of the array by passing in an array of keys to keep
array_pull Return and remove a key in the array using dot notation for nested arrays
array_random Picks one or more random entries out of an array, and returns the value (or values) of the random entries
array_set Set a key in the array using dot notation for nested arrays
array_unset Remove a key in the array using dot notation for nested arrays

About

Functions to extend and compliment PHP native array functionality

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Languages