selvinortiz / dot
Simplified array dot notation for PHP
Requires
- phpunit/phpunit: ^4.8
This package is auto-updated.
Last update: 2024-10-08 07:01:14 UTC
README
Description
Dot is a tiny library and implements array dot notation for PHP written by Selvin Ortiz
Requirements
- PHP 7.1+
- Composer and selvinortiz/dot
Install
composer require selvinortiz/dot
Test
sh spec.sh
Usage
To use Dot after proper installation, just autoload it, use it, and call methods on it:)
$input = [ 'name' => [ 'first' => 'Brad', 'last' => 'Bell', ], 'spouse' => [ 'name' => [ 'first' => 'Brandon', 'last' => 'Kelly' ], 'mood' => 'Happy', 'age' => '75', ], 'mood' => 'Angry', 'age' => 25, ]; Dot::has($input, 'spouse'); // true Dot::has($input, 'mistress.relationship'); // false Dot::get($input, 'spouse.name.last'); // 'Kelly' Dot::get($input, 'spouse'); /* [ 'name' => [ 'first' => 'Brandon', 'last' => 'Kelly' ], 'mood' => 'Happy', 'age' => '75' ] */ Dot::set($input, 'spouse.name.last', 'Bell'); /* $input will be mutated with a changed value [ 'name' => [ 'first' => 'Brad', 'last' => 'Bell', ], 'spouse' => [ 'name' => [ 'first' => 'Brandon', 'last' => 'Bell' ], 'mood' => 'Happy', 'age' => '75', ], 'mood' => 'Angry', 'age' => 25, ]; */ Dot::delete($input, 'spouse.mood'); /* $input will be mutated with a key/value deleted [ 'name' => [ 'first' => 'Brad', 'last' => 'Bell', ], 'spouse' => [ 'name' => [ 'first' => 'Brandon', 'last' => 'Bell' ] 'age' => '75', ], 'mood' => 'Angry', 'age' => 25, ]; */
API
Dot has a very small API and hoping to keep it small and to the point.
Dot::has($arr, $key)
Returns whether or not
$arr
has$key
. Put another way,$key
exists in$arr
Dot::get($arr, $key, $default = null)
Returns the value found in
$arr
by$key
or$default
provided
Dot::set(array &$arr, $key, $value)
Mutates the
$arr
by adding a new$key
with$value
provided
Dot::delete(array &$arr, $key)
Mutates the
$arr
by delete$key
and its associated value if found
Contribute
Dot wants to be friendly to first time contributors. Just follow the steps below and if you have questions along the way, please reach out.
- Fork it!
- Create your
bugfix
orfeature
branch - Commit and push your changes
- Submit a pull request
License
Dot is open source software licensed under the MIT License