Skip to content

Commit e4043a3

Browse files
committed
Strings::split() added parameter $limit
1 parent d2d0724 commit e4043a3

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

src/Utils/Strings.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -489,11 +489,12 @@ public static function split(
489489
string $pattern,
490490
bool|int $captureOffset = false,
491491
bool $skipEmpty = false,
492+
int $limit = -1,
492493
): array {
493494
$flags = is_int($captureOffset) && $captureOffset // back compatibility
494495
? $captureOffset
495496
: ($captureOffset ? PREG_SPLIT_OFFSET_CAPTURE : 0) | ($skipEmpty ? PREG_SPLIT_NO_EMPTY : 0);
496-
return self::pcre('preg_split', [$pattern, $subject, -1, $flags | PREG_SPLIT_DELIM_CAPTURE]);
497+
return self::pcre('preg_split', [$pattern, $subject, $limit, $flags | PREG_SPLIT_DELIM_CAPTURE]);
497498
}
498499

499500

tests/Utils/Strings.split().phpt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,3 +52,5 @@ Assert::same([
5252
[',', 4],
5353
['c', 6],
5454
], Strings::split('a, b, c', '#(,)\s*#', captureOffset: true));
55+
56+
Assert::same(['a', ',', 'b, c'], Strings::split('a, b, c', '#(,)\s*#', limit: 2));

0 commit comments

Comments
 (0)