3v4l.org

run code in 300+ PHP versions simultaneously
<?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 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
Deprecated: Creation of dynamic property Example::$events is deprecated in /in/gurGu on line 18 Deprecated: Creation of dynamic property Example::$with_ref is deprecated in /in/gurGu on line 22 Deprecated: Creation of dynamic property Example::$without_ref is deprecated in /in/gurGu on line 25 Example Object ( [events] => Array ( [example] => Array ( [0] => with_ref [1] => without_ref ) ) [with_ref] => 1 [without_ref] => 1 )
Output for 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28
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.3.11, 4.4.0 - 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.

preferences:
322.55 ms | 401 KiB | 460 Q