3v4l.org

run code in 500+ PHP versions simultaneously
<?php if (!function_exists('get_error_handler')) { function noop_error_handler() { } function get_error_handler(): ?callable { $handler = set_error_handler('noop_error_handler'); restore_error_handler(); return $handler; } } $handler = function (int $errno, string $errstr, ?string $errfile, ?int $errline) { echo "Error: " . $errstr . "\n"; }; set_error_handler($handler); $ab = get_error_handler(); print_R($ab); set_error_handler(function() { print 123;} ); echo $a;
Output for git.master_jit, git.master
Closure Object ( [name] => {closure:/in/ukbpP:13} [file] => /in/ukbpP [line] => 13 [parameter] => Array ( [$errno] => <required> [$errstr] => <required> [$errfile] => <required> [$errline] => <required> ) ) 123
Output for rfc.property-hooks
Closure Object ( [parameter] => Array ( [$errno] => <required> [$errstr] => <required> [$errfile] => <required> [$errline] => <required> ) ) 123

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:
72.85 ms | 2759 KiB | 4 Q