3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php class MethodTest { public function nonStaticFunction() { MethodTest::runTest(); } public function __call($name, $arguments) { // Note: value of $name is case sensitive. echo "Calling object method '$name' " . implode(', ', $arguments). "\n"; } /** As of PHP 5.3.0 */ public static function __callStatic($name, $arguments) { // Note: value of $name is case sensitive. echo "Calling static method '$name' " . implode(', ', $arguments). "\n"; } } $obj = new MethodTest; $obj->runTest('in object context'); MethodTest::runTest('in static context'); $obj->nonStaticFunction();
based on AuOug
Output for 5.3.0 - 5.3.2, 5.3.4 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
Calling object method 'runTest' in object context Calling static method 'runTest' in static context Calling object method 'runTest'
Output for 5.3.3
Calling object method 'runTest' in object context Calling static method 'runTest' in static context Calling static method 'runTest'
Output for 5.2.10 - 5.2.17
Calling object method 'runTest' in object context Fatal error: Call to undefined method MethodTest::runTest() in /in/UdrqZ on line 26
Process exited with code 255.
Output for 5.0.0 - 5.2.9
Calling object method 'runTest' in object context Fatal error: Call to undefined method MethodTest::runtest() in /in/UdrqZ on line 26
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/UdrqZ 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, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/UdrqZ 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/UdrqZ on line 4
Process exited with code 255.