3v4l.org

run code in 300+ PHP versions simultaneously
<?php function zip(...$arr){ $newArr = []; $count_max = 0; foreach($arr as $a) { $newArr[] = array_reverse($a); $count_max = count($a) > $count_max ? count($a) : $count_max; } while($count_max) { $return = []; foreach($newArr as &$a) $return[] = array_pop($a); yield $return; $count_max--; }; } $i = ['a', 'b', 'c', 'd']; $j = ['1', '2', '3', '4']; $g = ['!', '@', '#', '$']; $c = 0; foreach(zip($i, $j, $g) as [$k, $l, $m]) { $c++; printf("%s-%d-%s - Count: %d\n", $k, $l, $m, $c); }

preferences:
58.06 ms | 402 KiB | 5 Q