3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $code = <<<CODE require_once 'config.php'; require_once 'startup.php'; //TODO: Добавить очистку массивов POST и GET \$input = new Input; \$session = new Session; \$cookie = new Cookie; # hashcomment \$user = User::getInstance(); //test - admin is permanently logged in \$session->set('hash', '06260034fa0ac9fef81991f93abf2db3'); //test \$hash = \$session->get('hash') ? \$session->get('hash') : \$cookie->get('hash'); \$user->fetchOneByHash(\$hash); //Запускаем action, в зависимости от того, что пришло в POST /** * Записываем в текущую историю то, что пришло из POST['text'] * (пользователь мог изменить предыдущий результат в поле ввода текста вручную) * Если же история пуста, произойдет инициализация сессии с историей - * в сессию в \$_SESSION[category][0][text] запишется POST['text'] */ \$history = History::getInstance(History::CURRENT_RECORD); \$history->set('text', \$input->post('text')); \$history->destroyInstance(); \$action = new Action(\$route); \$action->execute(); CODE; preg_match_all('~(?(DEFINE) (?<comment> (?&line_comment) | (?&block_comment)) (?<line_comment> (?&slash_comment) | (?&hash_comment)) (?<slash_comment> //.*) (?<hash_comment> \#.*) (?<block_comment> (?s)/\*.*?\*/) ) (?&comment)~x', $code, $matches); print_r($matches);
Output for 4.4.6 - 4.4.9, 5.2.2 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
Array ( [0] => Array ( [0] => //TODO: Добавить очистку массивов POST и GET [1] => # hashcomment [2] => //test - admin is permanently logged in [3] => //test [4] => //Запускаем action, в зависимости от того, что пришло в POST [5] => /** * Записываем в текущую историю то, что пришло из POST['text'] * (пользователь мог изменить предыдущий результат в поле ввода текста вручную) * Если же история пуста, произойдет инициализация сессии с историей - * в сессию в $_SESSION[category][0][text] запишется POST['text'] */ ) [comment] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [1] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [line_comment] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [2] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [slash_comment] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [3] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [hash_comment] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [4] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [block_comment] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) [5] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => ) )
Output for 5.2.0 - 5.2.1
Warning: preg_match_all(): Compilation failed: unrecognized character after (?< at offset 18 in /in/gnK7v on line 47
Output for 4.3.11 - 4.4.1, 4.4.3 - 4.4.4, 5.0.0 - 5.1.1, 5.1.3 - 5.1.6
Warning: preg_match_all(): Compilation failed: assertion expected after (?( at offset 3 in /in/gnK7v on line 47 Array ( )
Output for 4.4.2, 5.1.2
Warning: preg_match_all(): Compilation failed: assertion expected after (?( at offset 3 in /in/gnK7v on line 48 Array ( )
Output for 4.4.5
Warning: preg_match_all(): Compilation failed: unrecognized character after (?< at offset 18 in /in/gnK7v on line 47 Array ( )
Output for 4.3.0 - 4.3.10
Warning: Compilation failed: assertion expected after (?( at offset 3 in /in/gnK7v on line 47 Array ( )