3v4l.org

run code in 300+ PHP versions simultaneously
<?php function string_key_iterator() { yield '42' => 'magic'; } function magical_varargs(...$whatever) { return $whatever; } echo "Normal:\n"; $normal_array = iterator_to_array(string_key_iterator()); var_dump( isset($normal_array[42]), isset($normal_array["42"]), array_keys($normal_array) ); echo "\nWeird and broken:\n"; $freaky_array = magical_varargs(...string_key_iterator()); var_dump( isset($freaky_array[42]), isset($freaky_array["42"]), array_keys($freaky_array) );
Output for 8.3.25 - 8.3.27, 8.4.12 - 8.4.14, 8.5.0 - 8.5.1
Normal: bool(true) bool(true) array(1) { [0]=> int(42) } Weird and broken: bool(false) bool(false) array(1) { [0]=> int(0) }
Output for 8.4.15
/bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.35' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.34' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15)
Process exited with code 1.
Output for 8.2.0 - 8.2.29, 8.3.0 - 8.3.24, 8.4.1 - 8.4.11
Normal: bool(true) bool(true) array(1) { [0]=> int(42) } Weird and broken: bool(false) bool(false) array(1) { [0]=> string(2) "42" }
Output for 8.3.28
/bin/php-8.3.28: /usr/lib/libm.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.3.28) /bin/php-8.3.28: /usr/lib/libm.so.6: version `GLIBC_2.35' not found (required by /bin/php-8.3.28) /bin/php-8.3.28: /usr/lib/libc.so.6: version `GLIBC_2.34' not found (required by /bin/php-8.3.28) /bin/php-8.3.28: /usr/lib/libc.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.3.28)
Process exited with code 1.

preferences:
71.39 ms | 409 KiB | 5 Q