3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php namespace Psr\Log { class LogLevel { const ALERT = 1; const CRITICAL = 2; const ERROR = 3; const WARNING = 4; } class AbstractLogger { } } namespace FTLabs { use \Psr\Log\LogLevel; final class Logger extends \Psr\Log\AbstractLogger { private static $php_error_to_severity = array( E_ERROR => LogLevel::ALERT, E_CORE_ERROR => LogLevel::ALERT, E_PARSE => LogLevel::ALERT, E_COMPILE_ERROR => LogLevel::ALERT, E_RECOVERABLE_ERROR => LogLevel::CRITICAL, E_USER_ERROR => LogLevel::ALERT, E_COMPILE_WARNING => LogLevel::CRITICAL, E_CORE_WARNING => LogLevel::CRITICAL, E_USER_WARNING => LogLevel::CRITICAL, E_WARNING => LogLevel::CRITICAL, E_NOTICE => LogLevel::ERROR, E_USER_NOTICE => LogLevel::ERROR, E_STRICT => LogLevel::WARNING, E_DEPRECATED => LogLevel::WARNING, E_USER_DEPRECATED => LogLevel::WARNING, ); public static function severityForPhpError($errno) { if (isset(self::$php_error_to_severity[$errno])) { return self::$php_error_to_severity[$errno]; } return LogLevel::ERROR; } } } namespace { use FTLabs\Logger; var_dump(Logger::severityForPhpError(E_USER_NOTICE)); }
Output for 5.3.0 - 5.6.21, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
int(3)
Output for 4.4.2 - 4.4.9, 5.1.0 - 5.2.17
Parse error: syntax error, unexpected T_STRING in /in/u2Bic on line 3
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1, 5.0.0 - 5.0.5
Parse error: parse error, unexpected T_STRING in /in/u2Bic on line 3
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error in /in/u2Bic on line 3
Process exited with code 255.