3v4l.org

run code in 300+ PHP versions simultaneously
<?php // string, null, bool, float, largest specified previous index function isIndexedArray($array) { return !(bool)count(array_filter(array_keys($array), 'is_string')); } $a4 = $a2; unset($a4[2]); print_r($a4); var_dump(isIndexedArray('a')); // false var_dump(isSequentialArray([])); // true/undefined var_dump(isSequentialArray(['a'])); // true var_dump(isSequentialArray(['a' => 1])); // false var_dump(isSequentialArray(array(0 => 'a', 1 => 'b'))); // true var_dump(isSequentialArray(array(0 => 'a', 5 => 'b'))); // true var_dump(isSequentialArray(array('a', 'b', 'c'))); // false var_dump(isSequentialArray(array("0" => 'a', "1" => 'b', "2" => 'c'))); // false var_dump(isSequentialArray(array("1" => 'a', "0" => 'b', "2" => 'c'))); // true var_dump(isSequentialArray(array("a" => 'a', "b" => 'b', "c" => 'c'))); // true
Output for 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.4, 8.3.6
Warning: Undefined variable $a2 in /in/LO1PD on line 8 Fatal error: Uncaught TypeError: array_keys(): Argument #1 ($array) must be of type array, string given in /in/LO1PD:5 Stack trace: #0 /in/LO1PD(5): array_keys('a') #1 /in/LO1PD(12): isIndexedArray('a') #2 {main} thrown in /in/LO1PD on line 5
Process exited with code 255.
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 Warning: Undefined variable $a2 in /in/LO1PD on line 8 Fatal error: Uncaught TypeError: array_keys(): Argument #1 ($array) must be of type array, string given in /in/LO1PD:5 Stack trace: #0 /in/LO1PD(5): array_keys('a') #1 /in/LO1PD(12): isIndexedArray('a') #2 {main} thrown in /in/LO1PD on line 5
Process exited with code 255.
Output for 7.2.0 - 7.2.33, 7.3.16 - 7.3.31, 7.4.0 - 7.4.33
Notice: Undefined variable: a2 in /in/LO1PD on line 8 Warning: array_keys() expects parameter 1 to be array, string given in /in/LO1PD on line 5 Warning: array_filter() expects parameter 1 to be array, null given in /in/LO1PD on line 5 Warning: count(): Parameter must be an array or an object that implements Countable in /in/LO1PD on line 5 bool(true) Fatal error: Uncaught Error: Call to undefined function isSequentialArray() in /in/LO1PD:13 Stack trace: #0 {main} thrown in /in/LO1PD on line 13
Process exited with code 255.
Output for 7.3.32 - 7.3.33
Warning: array_keys() expects parameter 1 to be array, string given in /in/LO1PD on line 5 Warning: array_filter() expects parameter 1 to be array, null given in /in/LO1PD on line 5 Warning: count(): Parameter must be an array or an object that implements Countable in /in/LO1PD on line 5 bool(true) Fatal error: Uncaught Error: Call to undefined function isSequentialArray() in /in/LO1PD:13 Stack trace: #0 {main} thrown in /in/LO1PD on line 13
Process exited with code 255.
Output for 7.0.0 - 7.0.32, 7.1.0 - 7.1.24
Notice: Undefined variable: a2 in /in/LO1PD on line 8 Warning: array_keys() expects parameter 1 to be array, string given in /in/LO1PD on line 5 Warning: array_filter() expects parameter 1 to be array, null given in /in/LO1PD on line 5 bool(true) Fatal error: Uncaught Error: Call to undefined function isSequentialArray() in /in/LO1PD:13 Stack trace: #0 {main} thrown in /in/LO1PD on line 13
Process exited with code 255.
Output for 5.5.0 - 5.5.38, 5.6.0 - 5.6.38
Notice: Undefined variable: a2 in /in/LO1PD on line 8 Warning: array_keys() expects parameter 1 to be array, string given in /in/LO1PD on line 5 Warning: array_filter() expects parameter 1 to be array, null given in /in/LO1PD on line 5 bool(true) Fatal error: Call to undefined function isSequentialArray() in /in/LO1PD on line 13
Process exited with code 255.

preferences:
213.99 ms | 402 KiB | 289 Q