3v4l.org

run code in 300+ PHP versions simultaneously
<?php function myfunc(){ return 'works'; } define('func', 'myfunc'); (func)(); // Error: function "func" not defined $tokens = token_get_all('<?php function myfunc(){ echo \'works\'; } define(\'func\', \'myfunc\'); (func)();'); foreach ($tokens as $token) { if (is_array($token)) { echo "Line {$token[2]}: ", token_name($token[0]), " ('{$token[1]}')", PHP_EOL; } }
Output for git.master, git.master_jit, rfc.property-hooks
Line 1: T_OPEN_TAG ('<?php ') Line 1: T_WHITESPACE (' ') Line 2: T_FUNCTION ('function') Line 2: T_WHITESPACE (' ') Line 2: T_STRING ('myfunc') Line 2: T_WHITESPACE (' ') Line 2: T_ECHO ('echo') Line 2: T_WHITESPACE (' ') Line 2: T_CONSTANT_ENCAPSED_STRING (''works'') Line 2: T_WHITESPACE (' ') Line 2: T_WHITESPACE (' ') Line 3: T_STRING ('define') Line 3: T_CONSTANT_ENCAPSED_STRING (''func'') Line 3: T_WHITESPACE (' ') Line 3: T_CONSTANT_ENCAPSED_STRING (''myfunc'') Line 3: T_WHITESPACE (' ') Line 4: T_STRING ('func')

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:
145.99 ms | 407 KiB | 5 Q