3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $array = array(); echo PHP_EOL . ' on empty array: ' . PHP_EOL; var_dump(key($array)); $array[] = 'f'; echo PHP_EOL . ' size one array: ' . PHP_EOL; var_dump(key($array)); $array[] = 'f'; echo PHP_EOL . ' size two array: ' . PHP_EOL; var_dump(key($array)); echo PHP_EOL . ' within loop: ' . PHP_EOL; foreach ($array as $key => $value) { var_dump(key($array)); if ($key == 1) { echo PHP_EOL . ' unsetting second element.... ' . PHP_EOL; unset($array[$key]); } } var_dump($array); echo PHP_EOL . ' after loop: ' . PHP_EOL; var_dump(key($array)); var_dump(current($array)); /* reset($array); echo PHP_EOL . ' after reset: ' . PHP_EOL; var_dump(key($array)); var_dump(current($array)); */ end($array); echo PHP_EOL . ' after end: ' . PHP_EOL; var_dump(key($array)); var_dump(current($array)); echo PHP_EOL . ' trying to trigger "Undefined index: " error: with NULL key' . PHP_EOL; $array[null]; echo PHP_EOL . ' trying to trigger "Undefined index: " error: with empty string key' . PHP_EOL; $array[''];
Output for hhvm-3.10.0 - 3.13.2, 7.0.0 - 7.1.0
on empty array: NULL size one array: int(0) size two array: int(0) within loop: int(0) int(0) unsetting second element.... array(1) { [0]=> string(1) "f" } after loop: int(0) string(1) "f" after end: int(0) string(1) "f" trying to trigger "Undefined index: " error: with NULL key Notice: Undefined index: in /in/6kEUX on line 42 trying to trigger "Undefined index: " error: with empty string key Notice: Undefined index: in /in/6kEUX on line 45
Output for 5.3.0 - 5.6.28
on empty array: NULL size one array: int(0) size two array: int(0) within loop: int(1) int(1) unsetting second element.... array(1) { [0]=> string(1) "f" } after loop: NULL bool(false) after end: int(0) string(1) "f" trying to trigger "Undefined index: " error: with NULL key Notice: Undefined index: in /in/6kEUX on line 42 trying to trigger "Undefined index: " error: with empty string key Notice: Undefined index: in /in/6kEUX on line 45
Output for 5.2.4 - 5.2.17
on empty array: NULL size one array: int(0) size two array: int(0) within loop: int(1) int(1) unsetting second element.... array(1) { [0]=> string(1) "f" } after loop: NULL bool(false) after end: int(0) string(1) "f" trying to trigger "Undefined index: " error: with NULL key Notice: Undefined index: in /in/6kEUX on line 42 trying to trigger "Undefined index: " error: with empty string key Notice: Undefined index: in /in/6kEUX on line 45
Output for 4.3.10 - 4.4.0, 4.4.2 - 4.4.9, 5.0.2 - 5.2.3
on empty array: NULL size one array: int(0) size two array: int(0) within loop: int(0) int(0) unsetting second element.... array(1) { [0]=> string(1) "f" } after loop: int(0) string(1) "f" after end: int(0) string(1) "f" trying to trigger "Undefined index: " error: with NULL key Notice: Undefined index: in /in/6kEUX on line 42 trying to trigger "Undefined index: " error: with empty string key Notice: Undefined index: in /in/6kEUX on line 45
Output for 4.3.0 - 4.3.9, 5.0.0 - 5.0.1
Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 3 Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 3 PHP_EOL on empty array: PHP_EOLNULL Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 7 Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 7 PHP_EOL size one array: PHP_EOLint(0) Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 11 Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 11 PHP_EOL size two array: PHP_EOLint(0) Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 14 Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 14 PHP_EOL within loop: PHP_EOLint(0) int(0) Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 18 Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 18 PHP_EOL unsetting second element.... PHP_EOLarray(1) { [0]=> string(1) "f" } Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 25 Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 25 PHP_EOL after loop: PHP_EOLint(0) string(1) "f" Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 37 Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 37 PHP_EOL after end: PHP_EOLint(0) string(1) "f" Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 41 Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 41 PHP_EOL trying to trigger "Undefined index: " error: with NULL keyPHP_EOL Notice: Undefined index: in /in/6kEUX on line 42 Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 44 Notice: Use of undefined constant PHP_EOL - assumed 'PHP_EOL' in /in/6kEUX on line 44 PHP_EOL trying to trigger "Undefined index: " error: with empty string keyPHP_EOL Notice: Undefined index: in /in/6kEUX on line 45
Output for 4.4.1
on empty array: NULL size one array: int(0) size two array: int(0) within loop: int(1) NULL unsetting second element.... array(1) { [0]=> string(1) "f" } after loop: int(0) string(1) "f" after end: int(0) string(1) "f" trying to trigger "Undefined index: " error: with NULL key Notice: Undefined index: in /in/6kEUX on line 42 trying to trigger "Undefined index: " error: with empty string key Notice: Undefined index: in /in/6kEUX on line 45