Array helpers.

v1.1.0 2025-02-04 00:00 UTC

This package is auto-updated.

Last update: 2025-02-20 19:31:40 UTC


README

Repo GitHub Actions Workflow Status Packagist Downloads php Packagist Version License wakatime Hits-of-Code

Contents

Introduction

Array helpers.

Requirements

  • PHP 7.1 or higher.

Installation

Install Zerotoprod\Arr via Composer:

composer require zero-to-prod/arr

This will add the package to your project’s dependencies and create an autoloader entry for it.

Usage

mapKeys()

Map keys of an array like this:

$array = [
    'Key1' => [
        'Key2' => 1
    ]
];

$new_array = Arr::mapKeys($array, function (string $key) {
    return strtolower($key);
});

$key2 = $new_array['key1']['key2']);

set()

Set values in arrays using dot notation, merge arrays, or use callbacks:

// Set value with dot notation
$array = ['a' => ['b' => 1]];
$new_array = Arr::set($array, 'a.b', 2); // ['a' => ['b' => 2]]

// Merge arrays
$array1 = ['a' => 1];
$array2 = ['b' => 2];
$new_array = Arr::set($array1, $array2); // ['a' => 1, 'b' => 2]

// Use a callback
$array = ['a' => 1];
$new_array = Arr::set($array, function($array) {
    $array['b'] = 2;
    return $array;
}); // ['a' => 1, 'b' => 2]

// Empty string key does not modify the array
$array = ['a' => 1];
$new_array = Arr::set($array, ''); // ['a' => 1]

Contributing

Contributions, issues, and feature requests are welcome! Feel free to check the issues page if you want to contribute.

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-branch).
  3. Commit changes (git commit -m 'Add some feature').
  4. Push to the branch (git push origin feature-branch).
  5. Create a new Pull Request.