3v4l.org

run code in 300+ PHP versions simultaneously
<?php class BaseExample { public static function __callStatic($name, array $arguments) { echo "Calling static method '$name' \n"; } public function __call($name, array $arguments) { echo "Calling object method '$name' \n"; } } class Example extends BaseExample { public function __construct() { Example::test(); static::test(); (new Example)->test(); $this->test(); } } $u = new Example();
Output for 5.4.39 - 5.4.45, 5.5.23 - 5.5.38, 5.6.6 - 5.6.38, 7.0.0 - 7.0.31, 7.1.0 - 7.1.22, 7.2.0 - 7.2.33, 7.3.16 - 7.3.33, 7.4.3 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling object method 'test' Calling
Process exited with code 137.

preferences:
397.36 ms | 440 KiB | 262 Q