3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php class Example { function RunEvent($event) { if (isset($this->events[$event])) { foreach ($this->events[$event] as $k => $v) { //call_user_func($v, &$this); // The above line is working code on PHP 5.3.3, but // throws a parse error on PHP 5.5.3. call_user_func($v, $this); } } } } $e = new Example; $e->events['example'][] = 'with_ref'; $e->events['example'][] = 'without_ref'; $e->RunEvent('example'); function with_ref(Example $e) { $e->with_ref = true; } function without_ref(Example $e) { $e->without_ref = true; } print_r($e);
Output for 5.0.0 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
Example Object ( [events] => Array ( [example] => Array ( [0] => with_ref [1] => without_ref ) ) [with_ref] => 1 [without_ref] => 1 )
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting ')' in /in/gurGu on line 21
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 ')' in /in/gurGu on line 21
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `')'' in /in/gurGu on line 21
Process exited with code 255.