3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php set_exception_handler(function(Exception $e) { echo "Didn't work. Here's why: ". $e->getMessage() . PHP_EOL; }); function tryAndDump($array) { var_dump(SplFixedArray::fromArray($array, false)); var_dump(SplFixedArray::fromArray($array, true)); var_dump(SplFixedArray::fromArray($array)); } $null = null; $empty = array(); $norm = array(1, 2, 4); $assoc = array('yup' => 'ok', 'nope' => 'bad'); $mixed = array(1, 2, 'yup' => 'ok', 'nah'); tryAndDump($null); tryAndDump($empty); tryAndDump($norm); tryAndDump($assoc); tryAndDump($mixed);
Output for 5.3.0 - 5.6.28, 7.0.0 - 7.1.0
Warning: SplFixedArray::fromArray() expects parameter 1 to be array, null given in /in/R6lte on line 8 NULL Warning: SplFixedArray::fromArray() expects parameter 1 to be array, null given in /in/R6lte on line 9 NULL Warning: SplFixedArray::fromArray() expects parameter 1 to be array, null given in /in/R6lte on line 10 NULL object(SplFixedArray)#2 (0) { } object(SplFixedArray)#2 (0) { } object(SplFixedArray)#2 (0) { } object(SplFixedArray)#2 (3) { [0]=> int(1) [1]=> int(2) [2]=> int(4) } object(SplFixedArray)#2 (3) { [0]=> int(1) [1]=> int(2) [2]=> int(4) } object(SplFixedArray)#2 (3) { [0]=> int(1) [1]=> int(2) [2]=> int(4) } object(SplFixedArray)#2 (2) { [0]=> string(2) "ok" [1]=> string(3) "bad" } Didn't work. Here's why: array must contain only positive integer keys
Output for hhvm-3.12.0
Warning: SplFixedArray::fromArray() expects parameter 1 to be array, NULL given in /in/R6lte on line 8 object(SplFixedArray)#2 (1) { ["data":protected]=> array(0) { } } Warning: SplFixedArray::fromArray() expects parameter 1 to be array, NULL given in /in/R6lte on line 9 object(SplFixedArray)#2 (1) { ["data":protected]=> array(0) { } } Warning: SplFixedArray::fromArray() expects parameter 1 to be array, NULL given in /in/R6lte on line 10 object(SplFixedArray)#2 (1) { ["data":protected]=> array(0) { } } object(SplFixedArray)#2 (1) { ["data":protected]=> array(0) { } } Warning: max(): Array must contain at least one element object(SplFixedArray)#2 (1) { ["data":protected]=> array(1) { [0]=> NULL } } Warning: max(): Array must contain at least one element object(SplFixedArray)#2 (1) { ["data":protected]=> array(1) { [0]=> NULL } } object(SplFixedArray)#2 (1) { ["data":protected]=> array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(4) } } object(SplFixedArray)#2 (1) { ["data":protected]=> array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(4) } } object(SplFixedArray)#2 (1) { ["data":protected]=> array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(4) } } object(SplFixedArray)#2 (1) { ["data":protected]=> array(2) { [0]=> string(2) "ok" [1]=> string(3) "bad" } } Fatal error: Uncaught exception 'InvalidArgumentException' with message 'array must contain only positive integer keys' in /in/R6lte:9 Stack trace: #0 /in/R6lte(9): SplFixedArray::fromArray() #1 /in/R6lte(22): tryAndDump() #2 {main} Didn't work. Here's why: array must contain only positive integer keys
Output for hhvm-3.10.0

Process exited with code 153.
Output for 4.4.2 - 4.4.9, 5.1.0 - 5.2.17
Parse error: syntax error, unexpected T_FUNCTION, expecting ')' in /in/R6lte on line 3
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1, 5.0.0 - 5.0.5
Parse error: parse error, unexpected T_FUNCTION, expecting ')' in /in/R6lte on line 3
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `')'' in /in/R6lte on line 3
Process exited with code 255.