<?php
$string = 'hello world good morning';
$result = [];
$i = 0;
while (preg_match_all("/(?=\b(\w+(?: \w+){{$i}})\b)/", $string, $m)) {
array_unshift($result, $m[1]);
++$i;
}
var_export($result);
- Output for 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
- array (
0 =>
array (
0 => 'hello world good morning',
),
1 =>
array (
0 => 'hello world good',
1 => 'world good morning',
),
2 =>
array (
0 => 'hello world',
1 => 'world good',
2 => 'good morning',
),
3 =>
array (
0 => 'hello',
1 => 'world',
2 => 'good',
3 => 'morning',
),
)
preferences:
74.96 ms | 407 KiB | 5 Q