3v4l.org

run code in 500+ PHP versions simultaneously
<?php // Test for switch not running default code when array element key is 0 if there is a mix of array keys that are numerical along with a string array key $test = array(0 => "First element, should be 0",1 => "Second element, should be 1",2 => "Third element, should be 2","Three" => "Fourth element, should be Three"); print_r($test); foreach($test as $k => $v) { switch($k) { case "Three": echo "not to be printed\n"; break; default: echo $k.": ".$v."\n"; break; } } ?>
Output for 4.3.0 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.34, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33
Array ( [0] => First element, should be 0 [1] => Second element, should be 1 [2] => Third element, should be 2 [Three] => Fourth element, should be Three ) not to be printed 1: Second element, should be 1 2: Third element, should be 2 not to be printed
Output for 8.0.0 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.34, 8.3.0 - 8.3.35, 8.4.1 - 8.4.26, 8.5.0 - 8.5.11
Array ( [0] => First element, should be 0 [1] => Second element, should be 1 [2] => Third element, should be 2 [Three] => Fourth element, should be Three ) 0: First element, should be 0 1: Second element, should be 1 2: Third element, should be 2 not to be printed

preferences:
33.28 ms | 1141 KiB | 9 Q