PHPackages                             madesimple/php-arrays - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. madesimple/php-arrays

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

madesimple/php-arrays
=====================

Helper functions for manipulating arrays

v3.0.0(1y ago)221.7k↓19.5%24MITPHPPHP &gt;=7.4

Since Aug 29Pushed 1y ago1 watchersCompare

[ Source](https://github.com/pdscopes/php-arrays)[ Packagist](https://packagist.org/packages/madesimple/php-arrays)[ RSS](/packages/madesimple-php-arrays/feed)WikiDiscussions main Synced 2d ago

READMEChangelog (9)Dependencies (1)Versions (15)Used By (4)

madesimple/php-arrays
=====================

[](#madesimplephp-arrays)

[![PHPUnit](https://github.com/pdscopes/php-arrays/actions/workflows/phpunit.yml/badge.svg)](https://github.com/pdscopes/php-arrays/actions/workflows/phpunit.yml)

Helper functions for manipulating arrays.

Arr &amp; ArrDots
-----------------

[](#arr--arrdots)

`Arr` and `ArrDots` contains a set of static helper methods for arrays. These methods can be used on both `array` and `\ArrayAccess` objects. See the PHPDocs inside the classes for more information.

Dots
----

[](#dots)

`Dots` is an implementation of `\ArrayAccess` that uses the functions from `\MadeSimple\ArrDots`. Instances of `Dots` can be passed into `ArrDots`as if it were an `array`.

There are three ways to create a `Dots`:

```
// Create an empty dot array
$dots = new \MadeSimple\Dots();

// Create a dot array with a pre-existing array
$dots = new \MadeSimple\Dots($array);

// Create a dot array with
$dots = new \MadeSimple\Dots([
    'address' => [
        'houseNo'  => '123',
        'street'   => 'Fake St',
        'postCode' => 'AB12 3CD',
    ],
    'comments' => [
        'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
        'Donec nec pellentesque est.',
        'Quisque volutpat quam et est laoreet, vitae consectetur erat molestie.',
    ]
]);
```

Once a `Dots` is created you can replace the underlining array in the following ways:

```
// Set an array after dot array
// Changes will _not_ be reflected in the original array
$dots->setArray($array);

// Set an array as a reference
// Changes will be reflected in the original array
$dots->setReference($array);
```

Basic usage of `Dots`:

```
// Get a value using dot notation:
echo "Post Code: ", $dots['address.postCode'], PHP_EOL;

// Set a value using dot notation:
$dots['address.postCode'] = 'EF45 6GH';
echo "Post Code: ", $dots['address.postCode'], PHP_EOL;

// Remove a value using dot notation:
unset($dots['address.postCode']);
echo "Exists: ", (isset($dots['address.postCode']) ? 'yes' : 'no'), PHP_EOL;

// Add a value using dot notation:
$dots['address.postCode'] = 'IJ78 9KL';
echo "Post Code: ", $dots['address.postCode'], PHP_EOL;

// Access nth element in an sub array
echo "Comment: ", $dots['comments.1'], PHP_EOL;
```

###  Health Score

41

—

FairBetter than 87% of packages

Maintenance32

Infrequent updates — may be unmaintained

Popularity31

Limited adoption so far

Community18

Small or concentrated contributor base

Maturity71

Established project with proven stability

 Bus Factor1

Top contributor holds 97% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~212 days

Recently: every ~573 days

Total

13

Last Release

683d ago

Major Versions

v1.3.5 → v2.0.02018-05-16

v2.1.0 → v3.0.02024-08-19

PHP version history (3 changes)v1.0.0PHP &gt;=7.0

v2.1.0PHP &gt;=7.1

v3.0.0PHP &gt;=7.4

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/13329586?v=4)[Pete Scopes](/maintainers/pdscopes)[@pdscopes](https://github.com/pdscopes)

---

Top Contributors

[![pdscopes](https://avatars.githubusercontent.com/u/13329586?v=4)](https://github.com/pdscopes "pdscopes (32 commits)")[![peter279k](https://avatars.githubusercontent.com/u/9021747?v=4)](https://github.com/peter279k "peter279k (1 commits)")

---

Tags

arraysdot-notationphp

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/madesimple-php-arrays/health.svg)

```
[![Health](https://phpackages.com/badges/madesimple-php-arrays/health.svg)](https://phpackages.com/packages/madesimple-php-arrays)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
