From f3a91e740bfc5b9b03889b841d502252e96f1ad7 Mon Sep 17 00:00:00 2001 From: Jesse Donat Date: Thu, 8 Dec 2022 11:57:21 -0600 Subject: [PATCH 01/13] Replace Travis badge with GitHub Actions badge --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 3513a2b..3c12cb6 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Quorum Array Functions -[![Build Status](https://travis-ci.org/QuorumCollection/ArrayFunctions.svg?branch=master)](https://travis-ci.org/QuorumCollection/ArrayFunctions) +[![CI](https://github.com/QuorumCollection/ArrayFunctions/actions/workflows/ci.yml/badge.svg)](https://github.com/QuorumCollection/ArrayFunctions/actions/workflows/ci.yml) A collection of global `array_*` functions appending to the native PHP set. From 76fe5207ffdb36d73d111cacb43c8abc58128eb1 Mon Sep 17 00:00:00 2001 From: Jesse Donat Date: Thu, 8 Dec 2022 13:59:57 -0600 Subject: [PATCH 02/13] Add dependabot --- .github/dependabot.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..115d815 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,10 @@ +version: 2 +updates: +- package-ecosystem: "composer" + directory: "/" + schedule: + interval: daily +- package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: daily From 016f3f14f95a3c960f228c806bdaefcd0756577f Mon Sep 17 00:00:00 2001 From: Jesse Donat Date: Sat, 10 Dec 2022 17:20:26 -0600 Subject: [PATCH 03/13] Generate a better README --- .mddoc.xml.dist | 24 ++++++++++ README.md | 114 +++++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 127 insertions(+), 11 deletions(-) create mode 100644 .mddoc.xml.dist diff --git a/.mddoc.xml.dist b/.mddoc.xml.dist new file mode 100644 index 0000000..587c2e0 --- /dev/null +++ b/.mddoc.xml.dist @@ -0,0 +1,24 @@ + + + +
+ + + + + A collection of global `array_*` functions appending to the native PHP set. + +
+ +
+ +
+ +
+ +
+ +
+
+
+
diff --git a/README.md b/README.md index 3c12cb6..a3ae72e 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,108 @@ # Quorum Array Functions -[![CI](https://github.com/QuorumCollection/ArrayFunctions/actions/workflows/ci.yml/badge.svg)](https://github.com/QuorumCollection/ArrayFunctions/actions/workflows/ci.yml) +[![Latest Stable Version](https://poser.pugx.org/quorum/array-functions/version)](https://packagist.org/packages/quorum/array-functions) +[![License](https://poser.pugx.org/quorum/array-functions/license)](https://packagist.org/packages/quorum/array-functions) +[![CI](https://github.com/QuorumCollection/ArrayFunctions/workflows/CI/badge.svg?)](https://github.com/QuorumCollection/ArrayFunctions/actions?query=workflow%3ACI) + A collection of global `array_*` functions appending to the native PHP set. -- `array_flatten( array $array, $allow_duplicates = false )` - - Given an array, find all the values recursively. -- `array_blend( array $arrays, array $keys = null )` - - Given an array of arrays, merges the array's children together. -- `array_key_array( array $arrays, $key )` - - Given an array of similarly keyed arrays, returns an array of only the values of the key. -- `array_keys_array( array $arrays, $keys )` - - Given an array of similarly keyed arrays, returns an array of only the selected keys. -- `array_key_refill( array $array, $keys, $fill = array() )` - - Given a keyed array, fills any missing values. +## Requirements + +- **php**: >=5.3.0 + +## Installing + +Install the latest version with: + +```bash +composer require 'quorum/array-functions' +``` + +## Array Functions + +### Function: \array_flatten + +```php +function array_flatten(array $array [, $allow_duplicates = false]) +``` + +##### Parameters: + +- ***array*** `$array` - The Array to be Flattened +- ***bool*** `$allow_duplicates` - Should the array allow duplicates + +##### Returns: + +- ***array*** - The resulting array or NULL on failure + +Given an array, find all the values recursively. + +### Function: \array_blend + +```php +function array_blend(array $arrays [, array $keys = null]) +``` + +##### Parameters: + +- ***array*** `$arrays` - An array of arrays. +- ***array*** | ***null*** `$keys` - The merged array. + +##### Returns: + +- ***array*** - The resulting blended array + +Given an array of arrays, merges the array's children together. + +### Function: \array_key_array + +```php +function array_key_array(array $arrays, $key) +``` + +##### Parameters: + +- ***array*** `$arrays` - An array of similarly keyed arrays +- ***int*** | ***string*** `$key` - The desired key + +##### Returns: + +- ***array*** - The flattened array + +Given an array of similarly keyed arrays, returns an array of only the values of the key. + +### Function: \array_keys_array + +```php +function array_keys_array(array $arrays, $keys) +``` + +##### Parameters: + +- ***array*** `$arrays` - An array of similarly keyed arrays +- ***array*** | ***int*** | ***string*** `$keys` - The key or array of keys to return + +##### Returns: + +- ***array*** - The array of arrays with just the selected keys + +Given an array of similarly keyed arrays, returns an array of only the selected keys. + +### Function: \array_key_refill + +```php +function array_key_refill(array $array, array $keys [, $fill = array()]) +``` + +##### Parameters: + +- ***array*** `$array` - A Keyed array +- ***array*** `$keys` - The keys that must exist +- ***mixed*** `$fill` - The desired value to fill with + +##### Returns: + +- ***array*** + +Given a keyed array, fills any missing values. \ No newline at end of file From fc1f1d0d8d0e15d2204e7ceef2e4fafd6bd1ec4d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Sep 2023 04:51:01 +0000 Subject: [PATCH 04/13] Bump actions/checkout from 3 to 4 Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a22124e..ba78161 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,7 +17,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Install PHP uses: shivammathur/setup-php@v2 From a2bf413fd18f028a7404ec91a752bf3da7ed18d5 Mon Sep 17 00:00:00 2001 From: Jesse Donat Date: Mon, 27 Nov 2023 11:11:02 -0600 Subject: [PATCH 05/13] Update PHP to 8.3 --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ba78161..c62d8cd 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,7 +11,7 @@ jobs: strategy: matrix: operating-system: [ubuntu-latest] - php-versions: ['5.3', '5.4', '5.5', '5.6', '7.0', '7.1', '7.2', '7.3', '7.4', '8.0', '8.1', '8.2'] + php-versions: ['5.3', '5.4', '5.5', '5.6', '7.0', '7.1', '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3'] runs-on: ${{ matrix.operating-system }} From 8f70ce4d4ca9fb93a40bbba0445191e6d8c1d109 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 10 Jul 2024 09:50:05 -0500 Subject: [PATCH 06/13] Update phpunit/phpunit requirement from ~4.8|~9 to include ~11 (#6) * Update phpunit/phpunit requirement from ~4.8|~9 to ^11.2.6 --- updated-dependencies: - dependency-name: phpunit/phpunit dependency-type: direct:development ... Signed-off-by: dependabot[bot] * Update composer.json * Update composer.json * Update composer.json --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Jesse Donat --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index dda72f0..494eb0a 100644 --- a/composer.json +++ b/composer.json @@ -24,7 +24,7 @@ "php" : ">=5.3.0" }, "require-dev": { - "phpunit/phpunit": "~4.8|~9" + "phpunit/phpunit": "~4.8|~9|~11" }, "autoload" : { "files": ["src/array.php"] From e2f40272b7df4887e914952d12ff5dbcd2e30f3a Mon Sep 17 00:00:00 2001 From: Jesse Donat Date: Sun, 1 Dec 2024 00:51:42 -0600 Subject: [PATCH 07/13] Test in PHP 8.4 (#7) --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c62d8cd..926a5ed 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,7 +11,7 @@ jobs: strategy: matrix: operating-system: [ubuntu-latest] - php-versions: ['5.3', '5.4', '5.5', '5.6', '7.0', '7.1', '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3'] + php-versions: ['5.3', '5.4', '5.5', '5.6', '7.0', '7.1', '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4'] runs-on: ${{ matrix.operating-system }} From 029168580c935d8fec995e23c93a22aa4d71d94d Mon Sep 17 00:00:00 2001 From: Jesse Donat Date: Fri, 8 Aug 2025 13:40:42 -0500 Subject: [PATCH 08/13] Improve test coverage (#11) * Improve test coverage * Update README --- .mddoc.xml.dist | 2 +- README.md | 2 +- test/ArrayFunctionsTest.php | 170 ++++++++++++++++++++++++++++++++++-- 3 files changed, 166 insertions(+), 8 deletions(-) diff --git a/.mddoc.xml.dist b/.mddoc.xml.dist index 587c2e0..0e4deb2 100644 --- a/.mddoc.xml.dist +++ b/.mddoc.xml.dist @@ -4,7 +4,7 @@
- + A collection of global `array_*` functions appending to the native PHP set. diff --git a/README.md b/README.md index a3ae72e..d5c90a9 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ [![Latest Stable Version](https://poser.pugx.org/quorum/array-functions/version)](https://packagist.org/packages/quorum/array-functions) [![License](https://poser.pugx.org/quorum/array-functions/license)](https://packagist.org/packages/quorum/array-functions) -[![CI](https://github.com/QuorumCollection/ArrayFunctions/workflows/CI/badge.svg?)](https://github.com/QuorumCollection/ArrayFunctions/actions?query=workflow%3ACI) +[![ci.yml](https://github.com/QuorumCollection/ArrayFunctions/actions/workflows/ci.yml/badge.svg)](https://github.com/QuorumCollection/ArrayFunctions/actions/workflows/ci.yml) A collection of global `array_*` functions appending to the native PHP set. diff --git a/test/ArrayFunctionsTest.php b/test/ArrayFunctionsTest.php index 7ebb6dd..010b236 100644 --- a/test/ArrayFunctionsTest.php +++ b/test/ArrayFunctionsTest.php @@ -18,8 +18,8 @@ public function testArrayFlatten() { array_flatten(array( 'bbq' => array( 'soda' => array( 1, 2, 4, 'fish fry' ), - 3 - ) + 3, + ), )) ); @@ -28,27 +28,185 @@ public function testArrayFlatten() { array_flatten(array( 'bbq' => array( 'soda' => array( 1, 2, 4, 'fish fry' ), - 3 - ) + 3, + ), ), true) ); - } public function testArrayBlend() { - //@todo: I'm not entirely sure how to test this + // Test blending arrays without specifying keys + $arrays = array( + 'fruits' => array( 'apple', 'banana', 'cherry' ), + 'vegetables' => array( 'carrot', 'broccoli', 'spinach' ), + 'meats' => array( 'chicken', 'beef', 'pork' ), + ); + + $expected = array( 'apple', 'banana', 'cherry', 'carrot', 'broccoli', 'spinach', 'chicken', 'beef', 'pork' ); + $this->assertEquals($expected, array_blend($arrays)); + + // Test blending arrays with specific keys + $keys = array( 'fruits', 'meats' ); + $expected = array( 'apple', 'banana', 'cherry', 'chicken', 'beef', 'pork' ); + $this->assertEquals($expected, array_blend($arrays, $keys)); + + // Test with empty arrays + $arrays = array( + 'fruits' => array(), + 'vegetables' => array( 'carrot', 'broccoli' ), + 'empty' => array(), + ); + + $expected = array( 'carrot', 'broccoli' ); + $this->assertEquals($expected, array_blend($arrays)); + + // Test with non-array values (should be skipped) + $arrays = array( + 'fruits' => array( 'apple', 'banana' ), + 'number' => 42, + 'vegetables' => array( 'carrot' ), + ); + + $expected = array( 'apple', 'banana', 'carrot' ); + $this->assertEquals($expected, array_blend($arrays)); } public function testArrayKeyArray() { + // Test with numeric keys + $arrays = array( + array( 'id' => 1, 'name' => 'John', 'role' => 'Developer' ), + array( 'id' => 2, 'name' => 'Jane', 'role' => 'Designer' ), + array( 'id' => 3, 'name' => 'Bob', 'role' => 'Manager' ), + ); + $expected = array( 1, 2, 3 ); + $this->assertEquals($expected, array_key_array($arrays, 'id')); + + // Test with string keys + $expected = array( 'John', 'Jane', 'Bob' ); + $this->assertEquals($expected, array_key_array($arrays, 'name')); + + // Test with associative array keys + $arrays = array( + 'user1' => array( 'id' => 101, 'name' => 'Alice' ), + 'user2' => array( 'id' => 102, 'name' => 'Charlie' ), + 'user3' => array( 'id' => 103, 'name' => 'Dave' ), + ); + + $expected = array( 'user1' => 101, 'user2' => 102, 'user3' => 103 ); + $this->assertEquals($expected, array_key_array($arrays, 'id')); + + // Test with mixed content + $arrays = array( + array( 'id' => 201, 'data' => 'value1' ), + array( 'id' => 202, 'data' => array( 'nested' => 'value2' ) ), + array( 'id' => 203, 'data' => 42 ), + ); + + $expected = array( 'value1', array( 'nested' => 'value2' ), 42 ); + $this->assertEquals($expected, array_key_array($arrays, 'data')); } public function testArrayKeysArray() { + // Test with multiple keys + $arrays = array( + array( 'id' => 1, 'name' => 'John', 'role' => 'Developer', 'age' => 30 ), + array( 'id' => 2, 'name' => 'Jane', 'role' => 'Designer', 'age' => 28 ), + array( 'id' => 3, 'name' => 'Bob', 'role' => 'Manager', 'age' => 35 ), + ); + + $keys = array( 'id', 'name' ); + $expected = array( + array( 'id' => 1, 'name' => 'John' ), + array( 'id' => 2, 'name' => 'Jane' ), + array( 'id' => 3, 'name' => 'Bob' ), + ); + $this->assertEquals($expected, array_keys_array($arrays, $keys)); + // Test with a single key (passed as string) + $expected = array( + array( 'id' => 1 ), + array( 'id' => 2 ), + array( 'id' => 3 ), + ); + $this->assertEquals($expected, array_keys_array($arrays, 'id')); + + // Test with a single key (passed as array) + $this->assertEquals($expected, array_keys_array($arrays, array( 'id' ))); + + // Test with associative array keys + $arrays = array( + 'user1' => array( 'id' => 101, 'name' => 'Alice', 'dept' => 'Engineering' ), + 'user2' => array( 'id' => 102, 'name' => 'Charlie', 'dept' => 'Marketing' ), + 'user3' => array( 'id' => 103, 'name' => 'Dave', 'dept' => 'Sales' ), + ); + + $keys = array( 'id', 'dept' ); + $expected = array( + 'user1' => array( 'id' => 101, 'dept' => 'Engineering' ), + 'user2' => array( 'id' => 102, 'dept' => 'Marketing' ), + 'user3' => array( 'id' => 103, 'dept' => 'Sales' ), + ); + $this->assertEquals($expected, array_keys_array($arrays, $keys)); } public function testArrayKeyRefill() { + // Test with missing keys and default empty array fill + $array = array( + 'key1' => 'value1', + 'key3' => 'value3', + ); + + $keys = array( 'key1', 'key2', 'key3', 'key4' ); + $expected = array( + 'key1' => 'value1', + 'key2' => array(), + 'key3' => 'value3', + 'key4' => array(), + ); + + $this->assertEquals($expected, array_key_refill($array, $keys)); + + // Test with custom fill value (string) + $expected = array( + 'key1' => 'value1', + 'key2' => 'default', + 'key3' => 'value3', + 'key4' => 'default', + ); + + $this->assertEquals($expected, array_key_refill($array, $keys, 'default')); + + // Test with custom fill value (number) + $expected = array( + 'key1' => 'value1', + 'key2' => 0, + 'key3' => 'value3', + 'key4' => 0, + ); + + $this->assertEquals($expected, array_key_refill($array, $keys, 0)); + + // Test with custom fill value (array) + $fillArray = array( 'status' => 'empty' ); + $expected = array( + 'key1' => 'value1', + 'key2' => $fillArray, + 'key3' => 'value3', + 'key4' => $fillArray, + ); + + $this->assertEquals($expected, array_key_refill($array, $keys, $fillArray)); + + // Test with no missing keys + $array = array( + 'a' => 1, + 'b' => 2, + 'c' => 3, + ); + $keys = array( 'a', 'b', 'c' ); + $this->assertEquals($array, array_key_refill($array, $keys, 'unused')); } From b84ac38729d5d75e847290411712428343b8fc6a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 2 Nov 2025 05:46:23 -0600 Subject: [PATCH 09/13] Bump actions/checkout from 4 to 5 (#12) Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 926a5ed..67a71ed 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,7 +17,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Install PHP uses: shivammathur/setup-php@v2 From e6e0c7f0f1f8d5e47b91ff7a28ea479ca0c64c9b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 21 Nov 2025 00:36:17 -0600 Subject: [PATCH 10/13] Bump actions/checkout from 5 to 6 (#13) Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v5...v6) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 67a71ed..1b85d2f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,7 +17,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Install PHP uses: shivammathur/setup-php@v2 From 671dadf55a16a81f866ddf962016dbd9df3c8bca Mon Sep 17 00:00:00 2001 From: Jesse Donat Date: Mon, 24 Nov 2025 17:21:48 -0600 Subject: [PATCH 11/13] Add PHP 8.5 to CI workflow matrix (#14) --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1b85d2f..80ea915 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,7 +11,7 @@ jobs: strategy: matrix: operating-system: [ubuntu-latest] - php-versions: ['5.3', '5.4', '5.5', '5.6', '7.0', '7.1', '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4'] + php-versions: ['5.3', '5.4', '5.5', '5.6', '7.0', '7.1', '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4', '8.5'] runs-on: ${{ matrix.operating-system }} From d890b4af4e6cab8da5380741fb12fc5d46271389 Mon Sep 17 00:00:00 2001 From: Jesse Donat Date: Fri, 15 May 2026 04:39:07 -0500 Subject: [PATCH 12/13] Update PHP version requirements in composer.json (#16) * Update PHP version requirements in composer.json * Update PHP versions in CI workflow Removed older PHP versions from CI workflow. * Update PHP version requirement to >=7.2.0 --- .github/workflows/ci.yml | 2 +- README.md | 4 ++-- composer.json | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 80ea915..3234dac 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,7 +11,7 @@ jobs: strategy: matrix: operating-system: [ubuntu-latest] - php-versions: ['5.3', '5.4', '5.5', '5.6', '7.0', '7.1', '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4', '8.5'] + php-versions: ['7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4', '8.5'] runs-on: ${{ matrix.operating-system }} diff --git a/README.md b/README.md index d5c90a9..95ccfc8 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ A collection of global `array_*` functions appending to the native PHP set. ## Requirements -- **php**: >=5.3.0 +- **php**: >=7.2.0 ## Installing @@ -105,4 +105,4 @@ function array_key_refill(array $array, array $keys [, $fill = array()]) - ***array*** -Given a keyed array, fills any missing values. \ No newline at end of file +Given a keyed array, fills any missing values. diff --git a/composer.json b/composer.json index 494eb0a..967729e 100644 --- a/composer.json +++ b/composer.json @@ -21,10 +21,10 @@ } ], "require": { - "php" : ">=5.3.0" + "php" : ">=7.2.0" }, "require-dev": { - "phpunit/phpunit": "~4.8|~9|~11" + "phpunit/phpunit": "~8|~9|~11" }, "autoload" : { "files": ["src/array.php"] From 8dfa28462ef4db7821a21bed5cd5bad24aa1d3c4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jun 2026 23:43:08 -0500 Subject: [PATCH 13/13] Bump actions/checkout from 6 to 7 (#17) Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to 7. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3234dac..788f3df 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,7 +17,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v6 + uses: actions/checkout@v7 - name: Install PHP uses: shivammathur/setup-php@v2