3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php class foo { static $objcount = 0; public $param =3; function __construct(){ self::$objcount++; } function test(){ echo 'success'; } static function static_test(){ $this->param = 5; echo $this->param; } } var_dump(foo::$objcount); $a = new foo(); var_dump(foo::$objcount); $b = new foo(); var_dump(foo::$objcount); $a->static_test();
Output for 7.0.0 - 7.1.0
int(0) int(1) int(2) Fatal error: Uncaught Error: Using $this when not in object context in /in/9cr6l:16 Stack trace: #0 /in/9cr6l(26): foo::static_test() #1 {main} thrown in /in/9cr6l on line 16
Process exited with code 255.
Output for hhvm-3.12.0
int(0) int(1) int(2) Fatal error: Uncaught Error: $this is null in /in/9cr6l:16 Stack trace: #0 /in/9cr6l(26): foo::static_test() #1 {main}
Process exited with code 255.
Output for hhvm-3.10.0
int(0) int(1) int(2) Fatal error: $this is null in /in/9cr6l on line 16
Process exited with code 255.
Output for 5.0.0 - 5.6.28
int(0) int(1) int(2) Fatal error: Using $this when not in object context in /in/9cr6l on line 16
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STATIC, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/9cr6l 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_STATIC, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/9cr6l on line 4
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in /in/9cr6l on line 4
Process exited with code 255.