3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php namespace ns01 { class cl01 { const ONE1 = 1 +1; const ONE2 = 34 - 34; const ONE3 = true; const ONE4 = 1 % 1; const ONE5 = !true; const ONE6 = ~ 1; const ONE7 = 1 | 1; const ONE8 = 1 & 1; const ONE9 = 1 ^ 1; const ONE10 = 1 << 1; const ONE11 = 1 >> 1; const ONE12 = 1 . 1; const ONE13 = 1 ?: 1; const ONE14 = 1 <= 1; //const ONE15 = array(); const ONE16 = 1 == 1; const ONE17 = 1 != 1; const ONE18 = 1 < 1; const ONE19 = 1 > 1; const ONE20 = 1 === 1; const ONE21 = 1 !== 1; const ONE22 = 1 && 1; const ONE23 = 1 || 1; const ONE24 = 1 xor 1; } } namespace ns02 { class cl02 { const TWO = \ns01\cl01::ONE; function test($tmp = self::TWO + 1) { return 1 + !\ns01\cl01::ONE; } } $tmp = new cl02(); $tmp->test(); }
based on JF49f
Output for 7.0.0 - 7.1.0
Fatal error: Uncaught Error: Undefined class constant 'ns01\cl01::ONE' in /in/7PUZM:44 Stack trace: #0 {main} thrown in /in/7PUZM on line 44
Process exited with code 255.
Output for hhvm-3.12.0 - 3.13.2
Fatal error: Uncaught Error: Couldn't find constant ns01\cl01::ONE in /in/7PUZM:38 Stack trace: #0 /in/7PUZM(45): ns02\cl02->test() #1 {main}
Process exited with code 255.
Output for hhvm-3.10.0
Fatal error: Couldn't find constant ns01\cl01::ONE in /in/7PUZM on line 38
Process exited with code 255.
Output for 5.6.0 - 5.6.28
Fatal error: Undefined class constant 'ns01\cl01::ONE' in /in/7PUZM on line 44
Process exited with code 255.
Output for 5.3.0 - 5.5.38
Parse error: syntax error, unexpected '+', expecting ',' or ';' in /in/7PUZM on line 6
Process exited with code 255.
Output for 4.4.2 - 4.4.9, 5.1.0 - 5.2.17
Parse error: syntax error, unexpected T_STRING in /in/7PUZM 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_STRING in /in/7PUZM on line 3
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error in /in/7PUZM on line 3
Process exited with code 255.