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_replace_callback('/'.$string_regex.'|'.$comment_regex.'|'.$url_regex.'|'.$calc_regex.'/si', array(&$this, 'filter_callback'), $string); $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/VD4cd
function name:  (null)
number of ops:  37
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_replace_callback'
          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        FETCH_THIS                                       $19     
         16        INIT_ARRAY                                       ~20     $19
         17        ADD_ARRAY_ELEMENT                                ~20     'filter_callback'
         18        SEND_VAL                                                 ~20
         19        SEND_VAR                                                 !0
         20        DO_ICALL                                         $21     
         21        ASSIGN                                                   !0, $21
    8    22        INIT_FCALL                                               'preg_match'
         23        CONCAT                                           ~23     '%2F', !1
         24        CONCAT                                           ~24     ~23, '%7C'
         25        CONCAT                                           ~25     ~24, !2
         26        CONCAT                                           ~26     ~25, '%7C'
         27        CONCAT                                           ~27     ~26, !3
         28        CONCAT                                           ~28     ~27, '%7C'
         29        CONCAT                                           ~29     ~28, !4
         30        CONCAT                                           ~30     ~29, '%2Fsi'
         31        SEND_VAL                                                 ~30
         32        SEND_VAR                                                 !0
         33        SEND_REF                                                 !5
         34        DO_ICALL                                         $31     
         35        ASSIGN                                                   !0, $31
         36      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
161.75 ms | 1405 KiB | 17 Q