3v4l.org

run code in 300+ PHP versions simultaneously
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/puKfE
function name:  (null)
number of ops:  25
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   49     0  E >   INIT_FCALL                                               'var_dump'
          1        INIT_FCALL                                               'prepared_mysqli_query'
          2        SEND_VAL                                                 'INSERT+INTO+%60tablename%60+%28%60column1%60%2C+%60column2%60%2C+%60column3%60%29+VALUES+%28NULL%2C+%27v1%27%2C+%27v2%27%29%3B'
          3        DO_FCALL                                      0  $0      
          4        SEND_VAR                                                 $0
          5        DO_ICALL                                                 
   51     6        INIT_FCALL                                               'var_dump'
          7        INIT_FCALL                                               'prepared_mysqli_query'
          8        SEND_VAL                                                 'INSERT+INTO+%60tablename%60+%28%60column1%60%2C+%60column2%60%2C+%60column3%60%29+VALUES+%28NOW%28%29%2C+%27v1%27%2C+%27v2%27%29%3B'
          9        DO_FCALL                                      0  $2      
         10        SEND_VAR                                                 $2
         11        DO_ICALL                                                 
   53    12        INIT_FCALL                                               'var_dump'
         13        INIT_FCALL                                               'prepared_mysqli_query'
         14        SEND_VAL                                                 'INSERT+INTO+%60tablename%60+%28%60column1%60%2C+%60column2%60%2C+%60column3%60%29+VALUES+%28%27test%2Cwith%2Ccommas%27%2C+%27v1%27%2C+%27v2%27%29%3B'
         15        DO_FCALL                                      0  $4      
         16        SEND_VAR                                                 $4
         17        DO_ICALL                                                 
   55    18        INIT_FCALL                                               'var_dump'
         19        INIT_FCALL                                               'prepared_mysqli_query'
         20        SEND_VAL                                                 'INSERT+INTO+%60tablename%60+%28%60column1%60%2C+%60column2%60%2C+%60column3%60%29+VALUES+%28%27v0%27%2C+%27v1%27%2C+%27v2%27%29+ON+DUPLICATE+KEY+UPDATE+%60column2%60+%3D+%27v2%27%3B'
         21        DO_FCALL                                      0  $6      
         22        SEND_VAR                                                 $6
         23        DO_ICALL                                                 
         24      > RETURN                                                   1

Function prepared_mysqli_query:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 52
Branch analysis from position: 52
2 jumps found. (Code = 44) Position 1 = 54, Position 2 = 50
Branch analysis from position: 54
1 jumps found. (Code = 42) Position 1 = 65
Branch analysis from position: 65
2 jumps found. (Code = 44) Position 1 = 67, Position 2 = 59
Branch analysis from position: 67
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 59
2 jumps found. (Code = 44) Position 1 = 67, Position 2 = 59
Branch analysis from position: 67
Branch analysis from position: 59
Branch analysis from position: 50
2 jumps found. (Code = 44) Position 1 = 54, Position 2 = 50
Branch analysis from position: 54
Branch analysis from position: 50
filename:       /in/puKfE
function name:  prepared_mysqli_query
number of ops:  75
compiled vars:  !0 = $query, !1 = $first_half, !2 = $placeholders, !3 = $data_types, !4 = $values, !5 = $trim_end, !6 = $open, !7 = $close, !8 = $values_stripped, !9 = $values_array, !10 = $values_count, !11 = $ph, !12 = $i, !13 = $types, !14 = $str
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   RECV                                             !0      
    6     1        ASSIGN                                                   !1, ''
    7     2        ASSIGN                                                   !2, ''
    8     3        ASSIGN                                                   !3, ''
    9     4        ASSIGN                                                   !4, ''
   12     5        INIT_FCALL                                               'strrpos'
          6        SEND_VAR                                                 !0
          7        SEND_VAL                                                 '%28'
          8        DO_ICALL                                         $19     
          9        ASSIGN                                                   !5, $19
   13    10        INIT_FCALL                                               'substr'
         11        SEND_VAR                                                 !0
         12        SEND_VAL                                                 0
         13        SEND_VAR                                                 !5
         14        DO_ICALL                                         $21     
         15        ASSIGN                                                   !1, $21
   16    16        INIT_FCALL                                               'strrpos'
         17        SEND_VAR                                                 !0
         18        SEND_VAL                                                 '%28'
         19        DO_ICALL                                         $23     
         20        ASSIGN                                                   !6, $23
   17    21        INIT_FCALL                                               'strrpos'
         22        SEND_VAR                                                 !0
         23        SEND_VAL                                                 '%29'
         24        DO_ICALL                                         $25     
         25        ASSIGN                                                   !7, $25
   19    26        INIT_FCALL                                               'substr'
         27        SEND_VAR                                                 !0
         28        ADD                                              ~27     !6, 1
         29        SEND_VAL                                                 ~27
         30        ADD                                              ~28     !7, 1
         31        SEND_VAL                                                 ~28
         32        DO_ICALL                                         $29     
         33        ASSIGN                                                   !4, $29
   20    34        INIT_FCALL                                               'substr'
         35        SEND_VAR                                                 !4
         36        SEND_VAL                                                 0
         37        SEND_VAL                                                 -1
         38        DO_ICALL                                         $31     
         39        ASSIGN                                                   !8, $31
   21    40        INIT_FCALL                                               'explode'
         41        SEND_VAL                                                 '%2C'
         42        SEND_VAR                                                 !8
         43        DO_ICALL                                         $33     
         44        ASSIGN                                                   !9, $33
   22    45        COUNT                                            ~35     !9
         46        ASSIGN                                                   !10, ~35
   25    47        ASSIGN                                                   !11, '%28'
   26    48        ASSIGN                                                   !12, 1
         49      > JMP                                                      ->52
   27    50    >   ASSIGN_OP                                     8          !11, '%3F%2C'
   26    51        PRE_INC                                                  !12
         52    >   IS_SMALLER                                               !12, !10
         53      > JMPNZ                                                    ~41, ->50
   29    54    >   ASSIGN_OP                                     8          !11, '%3F%29'
   30    55        ASSIGN_OP                                     8          !2, !11
   33    56        ASSIGN                                                   !13, ''
   34    57        ASSIGN                                                   !12, 0
         58      > JMP                                                      ->65
   35    59    >   FETCH_DIM_R                                      ~46     !9, 0
         60        GET_TYPE                                         ~47     ~46
         61        ASSIGN                                                   !14, ~47
   36    62        FETCH_DIM_R                                      ~49     !14, 0
         63        ASSIGN_OP                                     8          !13, ~49
   34    64        PRE_INC                                                  !12
         65    >   IS_SMALLER                                               !12, !10
         66      > JMPNZ                                                    ~52, ->59
   38    67    >   ASSIGN_OP                                     8          !3, !13
   41    68        CONCAT                                           ~54     !1, !2
         69        ASSIGN                                                   !0, ~54
   43    70        INIT_ARRAY                                       ~56     !0, 'query'
   44    71        ADD_ARRAY_ELEMENT                                ~56     !3, 'data_types'
   45    72        ADD_ARRAY_ELEMENT                                ~56     !9, 'values'
         73      > RETURN                                                   ~56
   47    74*     > RETURN                                                   null

End of function prepared_mysqli_query

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
281.02 ms | 983 KiB | 21 Q