3v4l.org

run code in 300+ PHP versions simultaneously
<?php function chunk_iterator(Iterator $it, int $n) { $chunk = []; for($i = 0; $it->valid(); $i++){ $chunk[] = $it->current(); $it->next(); if(count($chunk) == $n){ yield $chunk; $chunk = []; } } if(count($chunk)){ yield $chunk; } } // For demonstration, create an iterator from array $arr = range(20, 40, 1); $it = new ArrayIterator($arr); // Iterate over the generator foreach(chunk_iterator($it, 6) as $c){ echo implode(',', $c)."\n"; }
Output for 7.1.0 - 7.1.33, 7.2.0 - 7.2.34, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.29, 8.2.0 - 8.2.23, 8.3.0 - 8.3.11
20,21,22,23,24,25 26,27,28,29,30,31 32,33,34,35,36,37 38,39,40

preferences:
77.67 ms | 407 KiB | 5 Q