3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = [0, 1, 2]; $ref =& $array; // Necessary to trigger the old behavior $i = 0; foreach ($array as $k => &$val) { $i++; echo $i . ':' . $k . ':' . $val . ' '; if($i < 5 && !isset($array[$i])) $array[$i] = $val+1; if($i == 2) array_unshift($array, 'X'); } echo PHP_EOL . json_encode($array);
Output for 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
1:0:0 2:1:1 3:3:2 ["X",0,1,2]
Output for 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.40
1:0:0 2:1:1 3:0:X 4:1:0 5:2:1 6:3:2 7:4:1 ["X",0,1,2,1]

preferences:
216.62 ms | 402 KiB | 376 Q