3v4l.org

run code in 300+ PHP versions simultaneously
<?php if( ! function_exists('will_bontrager_insert_php') ) { function will_bontrager_insert_php($content) { $will_bontrager_content = $content; preg_match_all('!\[insert_php[^\]]*\](.*?)\[/insert_php[^\]]*\]!is',$will_bontrager_content,$will_bontrager_matches); $will_bontrager_nummatches = count($will_bontrager_matches[0]); for( $will_bontrager_i=0; $will_bontrager_i<$will_bontrager_nummatches; $will_bontrager_i++ ) { ob_start(); eval($will_bontrager_matches[1][$will_bontrager_i]); $will_bontrager_replacement = ob_get_contents(); ob_clean(); ob_end_flush(); $will_bontrager_content = preg_replace('/'.preg_quote($will_bontrager_matches[0][$will_bontrager_i],'/').'/',$will_bontrager_replacement,$will_bontrager_content,1); } return $will_bontrager_content; } # function will_bontrager_insert_php() add_filter( 'the_content', 'will_bontrager_insert_php', 9 ); } # if( ! function_exists('will_bontrager_insert_php') ) ?>
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 5, Position 2 = 11
Branch analysis from position: 5
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 11
filename:       /in/dcNFa
function name:  (null)
number of ops:  12
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   INIT_FCALL                                               'function_exists'
          1        SEND_VAL                                                 'will_bontrager_insert_php'
          2        DO_ICALL                                         $0      
          3        BOOL_NOT                                         ~1      $0
          4      > JMPZ                                                     ~1, ->11
    5     5    >   DECLARE_FUNCTION                                         'will_bontrager_insert_php'
   22     6        INIT_FCALL_BY_NAME                                       'add_filter'
          7        SEND_VAL_EX                                              'the_content'
          8        SEND_VAL_EX                                              'will_bontrager_insert_php'
          9        SEND_VAL_EX                                              9
         10        DO_FCALL                                      0          
   25    11    > > RETURN                                                   1

Function %00will_bontrager_insert_php%2Fin%2FdcNFa%3A5%240:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 40
Branch analysis from position: 40
2 jumps found. (Code = 44) Position 1 = 42, Position 2 = 12
Branch analysis from position: 42
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 12
2 jumps found. (Code = 44) Position 1 = 42, Position 2 = 12
Branch analysis from position: 42
Branch analysis from position: 12
filename:       /in/dcNFa
function name:  will_bontrager_insert_php
number of ops:  44
compiled vars:  !0 = $content, !1 = $will_bontrager_content, !2 = $will_bontrager_matches, !3 = $will_bontrager_nummatches, !4 = $will_bontrager_i, !5 = $will_bontrager_replacement
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    5     0  E >   RECV                                             !0      
    7     1        ASSIGN                                                   !1, !0
    8     2        INIT_FCALL                                               'preg_match_all'
          3        SEND_VAL                                                 '%21%5C%5Binsert_php%5B%5E%5C%5D%5D%2A%5C%5D%28.%2A%3F%29%5C%5B%2Finsert_php%5B%5E%5C%5D%5D%2A%5C%5D%21is'
          4        SEND_VAR                                                 !1
          5        SEND_REF                                                 !2
          6        DO_ICALL                                                 
    9     7        FETCH_DIM_R                                      ~8      !2, 0
          8        COUNT                                            ~9      ~8
          9        ASSIGN                                                   !3, ~9
   10    10        ASSIGN                                                   !4, 0
         11      > JMP                                                      ->40
   12    12    >   INIT_FCALL                                               'ob_start'
         13        DO_ICALL                                                 
   13    14        FETCH_DIM_R                                      ~13     !2, 1
         15        FETCH_DIM_R                                      ~14     ~13, !4
         16        INCLUDE_OR_EVAL                                          ~14, EVAL
   14    17        INIT_FCALL                                               'ob_get_contents'
         18        DO_ICALL                                         $16     
         19        ASSIGN                                                   !5, $16
   15    20        INIT_FCALL                                               'ob_clean'
         21        DO_ICALL                                                 
   16    22        INIT_FCALL                                               'ob_end_flush'
         23        DO_ICALL                                                 
   17    24        INIT_FCALL                                               'preg_replace'
         25        INIT_FCALL                                               'preg_quote'
         26        FETCH_DIM_R                                      ~20     !2, 0
         27        FETCH_DIM_R                                      ~21     ~20, !4
         28        SEND_VAL                                                 ~21
         29        SEND_VAL                                                 '%2F'
         30        DO_ICALL                                         $22     
         31        CONCAT                                           ~23     '%2F', $22
         32        CONCAT                                           ~24     ~23, '%2F'
         33        SEND_VAL                                                 ~24
         34        SEND_VAR                                                 !5
         35        SEND_VAR                                                 !1
         36        SEND_VAL                                                 1
         37        DO_ICALL                                         $25     
         38        ASSIGN                                                   !1, $25
   10    39        PRE_INC                                                  !4
         40    >   IS_SMALLER                                               !4, !3
         41      > JMPNZ                                                    ~28, ->12
   19    42    > > RETURN                                                   !1
   20    43*     > RETURN                                                   null

End of function %00will_bontrager_insert_php%2Fin%2FdcNFa%3A5%240

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
169.9 ms | 1405 KiB | 29 Q