3v4l.org

run code in 300+ PHP versions simultaneously
<?php $string = 'a{ra:calc(*(la)100%);font-s'; $string_regex = '((?<!\\\\)(?:\\\\\\\\)*(\'|")(?:.*?[^\\\\])??(?:\\\\\\\\)*\\2)'; $comment_regex = '(\\/\\*(?:(?!\\*\\/).)*\\*\\/)'; $url_regex = '(?<=:| |,|\\(|\\))(url)\\s*(\\()\\s*((?:[^()]+|(?2))*?)\\s*(\\))'; $calc_regex = '(?<=:| |,|\\(|\\))(calc)\\s*(\\()\\s*((?:[^()]+|(?2))*?)\\s*(\\))'; $string = preg_match('/'.$calc_regex.'/si', $string, $matches); var_dump($matches);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/BItLN
function name:  (null)
number of ops:  17
compiled vars:  !0 = $string, !1 = $string_regex, !2 = $comment_regex, !3 = $url_regex, !4 = $calc_regex, !5 = $matches
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, 'a%7Bra%3Acalc%28%2A%28la%29100%25%29%3Bfont-s'
    3     1        ASSIGN                                                   !1, '%28%28%3F%3C%21%5C%5C%29%28%3F%3A%5C%5C%5C%5C%29%2A%28%27%7C%22%29%28%3F%3A.%2A%3F%5B%5E%5C%5C%5D%29%3F%3F%28%3F%3A%5C%5C%5C%5C%29%2A%5C2%29'
    4     2        ASSIGN                                                   !2, '%28%5C%2F%5C%2A%28%3F%3A%28%3F%21%5C%2A%5C%2F%29.%29%2A%5C%2A%5C%2F%29'
    5     3        ASSIGN                                                   !3, '%28%3F%3C%3D%3A%7C+%7C%2C%7C%5C%28%7C%5C%29%29%28url%29%5Cs%2A%28%5C%28%29%5Cs%2A%28%28%3F%3A%5B%5E%28%29%5D%2B%7C%28%3F2%29%29%2A%3F%29%5Cs%2A%28%5C%29%29'
    6     4        ASSIGN                                                   !4, '%28%3F%3C%3D%3A%7C+%7C%2C%7C%5C%28%7C%5C%29%29%28calc%29%5Cs%2A%28%5C%28%29%5Cs%2A%28%28%3F%3A%5B%5E%28%29%5D%2B%7C%28%3F2%29%29%2A%3F%29%5Cs%2A%28%5C%29%29'
    7     5        INIT_FCALL                                               'preg_match'
          6        CONCAT                                           ~11     '%2F', !4
          7        CONCAT                                           ~12     ~11, '%2Fsi'
          8        SEND_VAL                                                 ~12
          9        SEND_VAR                                                 !0
         10        SEND_REF                                                 !5
         11        DO_ICALL                                         $13     
         12        ASSIGN                                                   !0, $13
    8    13        INIT_FCALL                                               'var_dump'
         14        SEND_VAR                                                 !5
         15        DO_ICALL                                                 
         16      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
175.94 ms | 1395 KiB | 17 Q