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('/'.$string_regex.'|'.$comment_regex.'|'.$url_regex.'|'.$calc_regex.'/si', $string, $matches);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/MPJff
function name:  (null)
number of ops:  20
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', !1
          7        CONCAT                                           ~12     ~11, '%7C'
          8        CONCAT                                           ~13     ~12, !2
          9        CONCAT                                           ~14     ~13, '%7C'
         10        CONCAT                                           ~15     ~14, !3
         11        CONCAT                                           ~16     ~15, '%7C'
         12        CONCAT                                           ~17     ~16, !4
         13        CONCAT                                           ~18     ~17, '%2Fsi'
         14        SEND_VAL                                                 ~18
         15        SEND_VAR                                                 !0
         16        SEND_REF                                                 !5
         17        DO_ICALL                                         $19     
         18        ASSIGN                                                   !0, $19
         19      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
151.87 ms | 1395 KiB | 15 Q