3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php // define class constant linking to a not defined constant interface Foo { const FOO = FOO; } interface Bar { const BAR = BAR; } echo "Define the linked constant AFTER reading:\n"; Foo::FOO; define('FOO', 'Value of FOO'); var_dump(Foo::FOO); echo "Define the linked constant BEFORE reading:\n"; define('BAR', 'Value of BAR'); var_dump(Bar::BAR);
Output for 5.0.0 - 5.6.28, 7.0.0 - 7.1.0
Define the linked constant AFTER reading: Notice: Use of undefined constant FOO - assumed 'FOO' in /in/NGfkv on line 13 string(3) "FOO" Define the linked constant BEFORE reading: string(12) "Value of BAR"
Output for hhvm-3.10.0 - 3.13.2
Define the linked constant AFTER reading: Notice: Use of undefined constant FOO - assumed 'FOO' in /in/NGfkv on line 5 string(3) "FOO" Define the linked constant BEFORE reading: string(12) "Value of BAR"
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING in /in/NGfkv on line 4
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1
Parse error: parse error, unexpected T_STRING in /in/NGfkv on line 4
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error in /in/NGfkv on line 4
Process exited with code 255.