Skip to content

Commit b5f44a7

Browse files
Str::symmetricSplit(): Make $default only accept string or null
After all, it is a Str-based class that should not pad anything other than string or null.
1 parent 8854c46 commit b5f44a7

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

src/Str.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,11 @@ public static function startsWith(?string $subject, string $start, bool $caseSen
5454
* @param ?string $subject
5555
* @param string $delimiter
5656
* @param int $limit
57-
* @param mixed $default
57+
* @param ?string $default
5858
*
59-
* @return array<int, mixed>
59+
* @return array<int, ?string>
6060
*/
61-
public static function symmetricSplit(?string $subject, string $delimiter, int $limit, $default = null)
61+
public static function symmetricSplit(?string $subject, string $delimiter, int $limit, ?string $default = null)
6262
{
6363
if ($subject === null || empty($delimiter)) {
6464
return array_pad([], $limit, $default);

tests/StrTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ public function testSymmetricSplitReturnsArrayPaddedToTheSizeSpecifiedByLimitUsi
5454

5555
public function testSymmetricSplitReturnsArrayPaddedToTheSizeSpecifiedByLimitUsingCustomValue()
5656
{
57-
$this->assertSame(['foo', 'bar', false, false], Str::symmetricSplit('foo,bar', ',', 4, false));
57+
$this->assertSame(['foo', 'bar', 'default', 'default'], Str::symmetricSplit('foo,bar', ',', 4, 'default'));
5858
}
5959

6060
public function testSymmetricSplitReturnsUnpaddedArrayIfTheSizeOfTheExplodedStringIsLessThanLimit()

0 commit comments

Comments
 (0)