3v4l.org

run code in 300+ PHP versions simultaneously
<?php function ff(&$var) { return $var; } class A { public function __construct($f) { $this->f = $f; } public function __invoke() { $args = array(); foreach (func_get_args() as &$arg) { $args[] = &$arg; } return call_user_func_array($this->f, $args); } } $a = new A('ff'); echo call_user_func_array($a, array('A'));

preferences:
51.34 ms | 402 KiB | 5 Q