3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $array = array(0, 1, 2); while (each($array)) { var_dump(key($array), current($array)); } reset($array); echo "----\n"; foreach ($array as $elem) { var_dump(key($array), current($array)); } reset($array); echo "----\n"; $array2 = &$array; foreach ($array2 as $elem) { var_dump(key($array), current($array)); }
Output for 7.0.0 - 7.1.0
int(1) int(1) int(2) int(2) NULL bool(false) ---- int(0) int(0) int(0) int(0) int(0) int(0) ---- int(0) int(0) int(0) int(0) int(0) int(0)
Output for 5.2.4 - 5.6.28
int(1) int(1) int(2) int(2) NULL bool(false) ---- int(1) int(1) int(1) int(1) int(1) int(1) ---- int(1) int(1) int(2) int(2) NULL bool(false)
Output for 4.3.0 - 4.4.0, 4.4.2 - 5.2.3
int(1) int(1) int(2) int(2) NULL bool(false) ---- int(0) int(0) int(0) int(0) int(0) int(0) ---- int(1) int(1) int(2) int(2) NULL bool(false)
Output for 4.4.1
int(1) int(1) int(2) int(2) NULL bool(false) ---- int(1) int(1) int(2) int(2) NULL bool(false) ---- int(0) int(0) int(0) int(0) int(0) int(0)