3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php class x { function foo() { print "foo"; } function bar() { $x = array('self', "foo"); call_user_func($x); $x(); } } $a = new x; $a->bar(); ?>
based on pqZdR
Output for 7.0.0 - 7.1.0
foo Fatal error: Uncaught Error: Class 'self' not found in /in/83trW:9 Stack trace: #0 /in/83trW(13): x->bar() #1 {main} thrown in /in/83trW on line 9
Process exited with code 255.
Output for hhvm-3.10.0 - 3.12.0
foofoo
Output for 5.4.0 - 5.6.28
foo Fatal error: Class 'self' not found in /in/83trW on line 9
Process exited with code 255.
Output for 5.0.0 - 5.1.1, 5.3.0 - 5.3.29
foo Fatal error: Function name must be a string in /in/83trW on line 9
Process exited with code 255.
Output for 5.1.2 - 5.2.17
Strict Standards: Non-static method x::foo() cannot be called statically, assuming $this from compatible context x in /in/83trW on line 8 foo Fatal error: Function name must be a string in /in/83trW on line 9
Process exited with code 255.
Output for 4.4.5 - 4.4.9
Warning: call_user_func(self::foo): First argument is expected to be a valid callback in /in/83trW on line 8 Notice: Array to string conversion in /in/83trW on line 9 Fatal error: Call to undefined function: array() in /in/83trW on line 9
Process exited with code 255.
Output for 4.3.2 - 4.4.4
Warning: call_user_func(self::foo): First argument is expected to be a valid callback in /in/83trW on line 8 Notice: Array to string conversion in /in/83trW on line 9 Fatal error: Call to undefined function: array() in /in/83trW on line 9
Process exited with code 255.
Output for 4.3.0 - 4.3.1
Warning: call_user_func(self::foo) [http://www.php.net/function.call-user-func]: First argument is expected to be a valid callback in /in/83trW on line 8 Notice: Array to string conversion in /in/83trW on line 9 Fatal error: Call to undefined function: array() in /in/83trW on line 9