3v4l.org

run code in 300+ PHP versions simultaneously
<?php function event($name,$cb = null){ static $e = array(); if ( is_callable($cb) ){ empty( $e[$name] ) ? $e[$name] = array($cb) : $e[$name][] = $cb; } elseif ( false === empty($e[$name]) ) { $a = is_array($cb) ? $cb : array(); foreach ($e[$name] as $eh) call_user_func_array($eh,$a); } } // Add a foo event handler event('foo',function(){ print_r(func_get_args()); }); // Add another foo event handler event('foo',function(){ echo 'Hello, friend!'; }); // Call foo event with parameters event('foo',[1,2]); // Call bar event (does nothing) event('bar');
Output for git.master, git.master_jit, rfc.property-hooks
Array ( [0] => 1 [1] => 2 ) Hello, friend!

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
40.23 ms | 401 KiB | 8 Q