3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Test { function method($a = self::UNDEFINED) { } } $rp = new ReflectionParameter(['Test', 'method'], 'a'); try { $val = $rp->getDefaultValue(); } catch (Error $ex) { var_dump($ex); }
Output for 8.3.0 - 8.3.4, 8.3.6
object(Error)#2 (7) { ["message":protected]=> string(34) "Undefined constant self::UNDEFINED" ["string":"Error":private]=> string(0) "" ["code":protected]=> int(0) ["file":protected]=> string(9) "/in/hAdkZ" ["line":protected]=> int(5) ["trace":"Error":private]=> array(2) { [0]=> array(3) { ["file"]=> string(9) "/in/hAdkZ" ["line"]=> int(12) ["function"]=> string(21) "[constant expression]" } [1]=> array(6) { ["file"]=> string(9) "/in/hAdkZ" ["line"]=> int(12) ["function"]=> string(15) "getDefaultValue" ["class"]=> string(19) "ReflectionParameter" ["type"]=> string(2) "->" ["args"]=> array(0) { } } } ["previous":"Error":private]=> NULL }
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 object(Error)#2 (7) { ["message":protected]=> string(34) "Undefined constant self::UNDEFINED" ["string":"Error":private]=> string(0) "" ["code":protected]=> int(0) ["file":protected]=> string(9) "/in/hAdkZ" ["line":protected]=> int(5) ["trace":"Error":private]=> array(2) { [0]=> array(3) { ["file"]=> string(9) "/in/hAdkZ" ["line"]=> int(12) ["function"]=> string(21) "[constant expression]" } [1]=> array(6) { ["file"]=> string(9) "/in/hAdkZ" ["line"]=> int(12) ["function"]=> string(15) "getDefaultValue" ["class"]=> string(19) "ReflectionParameter" ["type"]=> string(2) "->" ["args"]=> array(0) { } } } ["previous":"Error":private]=> NULL }
Output for 8.2.0 - 8.2.18
object(Error)#2 (7) { ["message":protected]=> string(34) "Undefined constant self::UNDEFINED" ["string":"Error":private]=> string(0) "" ["code":protected]=> int(0) ["file":protected]=> string(9) "/in/hAdkZ" ["line":protected]=> int(5) ["trace":"Error":private]=> array(1) { [0]=> array(6) { ["file"]=> string(9) "/in/hAdkZ" ["line"]=> int(12) ["function"]=> string(15) "getDefaultValue" ["class"]=> string(19) "ReflectionParameter" ["type"]=> string(2) "->" ["args"]=> array(0) { } } } ["previous":"Error":private]=> NULL }
Output for 8.0.0 - 8.0.30, 8.1.0 - 8.1.28
object(Error)#2 (7) { ["message":protected]=> string(34) "Undefined constant self::UNDEFINED" ["string":"Error":private]=> string(0) "" ["code":protected]=> int(0) ["file":protected]=> string(9) "/in/hAdkZ" ["line":protected]=> int(12) ["trace":"Error":private]=> array(1) { [0]=> array(6) { ["file"]=> string(9) "/in/hAdkZ" ["line"]=> int(12) ["function"]=> string(15) "getDefaultValue" ["class"]=> string(19) "ReflectionParameter" ["type"]=> string(2) "->" ["args"]=> array(0) { } } } ["previous":"Error":private]=> NULL }
Output for 7.1.0 - 7.1.25, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33
object(Error)#2 (7) { ["message":protected]=> string(42) "Undefined class constant 'self::UNDEFINED'" ["string":"Error":private]=> string(0) "" ["code":protected]=> int(0) ["file":protected]=> string(9) "/in/hAdkZ" ["line":protected]=> int(12) ["trace":"Error":private]=> array(1) { [0]=> array(6) { ["file"]=> string(9) "/in/hAdkZ" ["line"]=> int(12) ["function"]=> string(15) "getDefaultValue" ["class"]=> string(19) "ReflectionParameter" ["type"]=> string(2) "->" ["args"]=> array(0) { } } } ["previous":"Error":private]=> NULL }

preferences:
147.22 ms | 403 KiB | 175 Q