3v4l.org

run code in 300+ PHP versions simultaneously
<?php var_dump( preg_match_all( '/ (?<LITERAL_STRING> [^{]* ) | (?<INLINE_TAG_START>{) (?<TAG_NAME>@\w+) \s* #(?: # (?<TAG_WORD>[\S]*) # (?<TAG_WHITESPACE>[\s]*) #)* (?<I>[\w|\s]*)* (?<INLINE_TAG_END>}) /ux', 'This is {@inline a tag with} a description {@see descriptions} that is divided', $matches, PREG_SET_ORDER ) ); foreach ($matches as $key => $match) { echo "\n" . $key . "\n"; foreach ($match as $innerKey => $element) { if (is_numeric($innerKey)) { continue; } echo $innerKey .': '. var_export($element, true) . "\n"; } }
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 10, Position 2 = 34
Branch analysis from position: 10
2 jumps found. (Code = 78) Position 1 = 11, Position 2 = 34
Branch analysis from position: 11
2 jumps found. (Code = 77) Position 1 = 16, Position 2 = 32
Branch analysis from position: 16
2 jumps found. (Code = 78) Position 1 = 17, Position 2 = 32
Branch analysis from position: 17
2 jumps found. (Code = 43) Position 1 = 22, Position 2 = 23
Branch analysis from position: 22
1 jumps found. (Code = 42) Position 1 = 16
Branch analysis from position: 16
Branch analysis from position: 23
1 jumps found. (Code = 42) Position 1 = 16
Branch analysis from position: 16
Branch analysis from position: 32
1 jumps found. (Code = 42) Position 1 = 10
Branch analysis from position: 10
Branch analysis from position: 32
Branch analysis from position: 34
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 34
filename:       /in/cDbrc
function name:  (null)
number of ops:  36
compiled vars:  !0 = $matches, !1 = $match, !2 = $key, !3 = $element, !4 = $innerKey
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   INIT_FCALL                                               'var_dump'
    3     1        INIT_FCALL                                               'preg_match_all'
    4     2        SEND_VAL                                                 '%2F%0A++++++++++++%28%3F%3CLITERAL_STRING%3E%0A++++++++++++++++%5B%5E%7B%5D%2A%0A++++++++++++%29%0A++++++++++++%7C%0A++++++++++++%28%3F%3CINLINE_TAG_START%3E%7B%29%0A++++++++++++%28%3F%3CTAG_NAME%3E%40%5Cw%2B%29%0A++++++++++++%5Cs%2A%0A++++++++++++%23%28%3F%3A%0A++++++++++++%23++%28%3F%3CTAG_WORD%3E%5B%5CS%5D%2A%29%0A++++++++++++%23++%28%3F%3CTAG_WHITESPACE%3E%5B%5Cs%5D%2A%29%0A++++++++++++%23%29%2A%0A++++++++++++%28%3F%3CI%3E%5B%5Cw%7C%5Cs%5D%2A%29%2A%0A++++++++++++%28%3F%3CINLINE_TAG_END%3E%7D%29%0A++++++++++++%2Fux'
   19     3        SEND_VAL                                                 'This+is+%7B%40inline+a+tag+with%7D+a+description+%7B%40see+descriptions%7D+that+is+divided'
   20     4        SEND_REF                                                 !0
   21     5        SEND_VAL                                                 2
          6        DO_ICALL                                         $5      
          7        SEND_VAR                                                 $5
          8        DO_ICALL                                                 
   25     9      > FE_RESET_R                                       $7      !0, ->34
         10    > > FE_FETCH_R                                       ~8      $7, !1, ->34
         11    >   ASSIGN                                                   !2, ~8
   26    12        CONCAT                                           ~10     '%0A', !2
         13        CONCAT                                           ~11     ~10, '%0A'
         14        ECHO                                                     ~11
   27    15      > FE_RESET_R                                       $12     !1, ->32
         16    > > FE_FETCH_R                                       ~13     $12, !3, ->32
         17    >   ASSIGN                                                   !4, ~13
   28    18        INIT_FCALL                                               'is_numeric'
         19        SEND_VAR                                                 !4
         20        DO_ICALL                                         $15     
         21      > JMPZ                                                     $15, ->23
   29    22    > > JMP                                                      ->16
   32    23    >   CONCAT                                           ~16     !4, '%3A+'
         24        INIT_FCALL                                               'var_export'
         25        SEND_VAR                                                 !3
         26        SEND_VAL                                                 <true>
         27        DO_ICALL                                         $17     
         28        CONCAT                                           ~18     ~16, $17
         29        CONCAT                                           ~19     ~18, '%0A'
         30        ECHO                                                     ~19
   27    31      > JMP                                                      ->16
         32    >   FE_FREE                                                  $12
   25    33      > JMP                                                      ->10
         34    >   FE_FREE                                                  $7
   34    35      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
160.22 ms | 1400 KiB | 21 Q