A strictly typed array reader
A strictly typed array reader for PHP.
- PHP 7.3+ or 8.0+
composer require selective/array-reader
You can use the
ArrayReader to read single values from a multidimensional
array by passing the path to one of the
get*() / find*() method takes a default value as second argument.
If the path cannot be found in the original array, the default is used as return value.
get*() method returns only the declared return type.
If the default value is not given and the element cannot be found, an exception is thrown.
find*() method returns only the declared return type or
No exception is thrown if the element cannot be found.
<?php use Selective\ArrayReader\ArrayReader; $arrayReader = new ArrayReader([ 'key1' => [ 'key2' => [ 'key3' => 'value1', ] ] ]); // Output: value1 echo $arrayReader->getString('key1.key2.key3');
Converting complex data with simple PHP works by using a lot of type casting and
if conditions etc.
This leads to very high cyclomatic complexity and nesting depth, and thus poor "code rating".
Before: Conditions: 10, Paths: 512, CRAP Score: 10
After: Conditions: 1, Paths: 1, CRAP Score: 1
The MIT License (MIT). Please see License File for more information.