3v4l.org

run code in 300+ PHP versions simultaneously
<?php $strings = '"int2", "int4", "oid", "int8", "cash", "money", "numeric", "float4", "float8", "bpchar", "char", "char2", "char4", "char8", "char16", "varchar", "text", "name", "filename", "bytea", "bool", "bit", "date", "time", "timetz", "abstime", "timestamp", "timestamptz", "_bool", "_char", "_int2", "_int4", "_text", "_oid", "_varchar", "_int8", "_float4", "_float8", "_abstime", "_date", "_time", "_timestamp", "_numeric", "_bytea"'; $integers = 'Types.SMALLINT, Types.INTEGER, Types.INTEGER, Types.BIGINT, Types.DOUBLE, Types.DOUBLE, Types.NUMERIC, Types.REAL, Types.DOUBLE, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, Types.CHAR, Types.VARCHAR, Types.VARCHAR, Types.VARCHAR, Types.VARCHAR, Types.BINARY, Types.BOOLEAN, Types.BIT, Types.DATE, Types.TIME, Types.TIME, Types.TIMESTAMP, Types.TIMESTAMP, Types.TIMESTAMP, Types.ARRAY, Types.ARRAY, Types.ARRAY, Types.ARRAY, Types.ARRAY, Types.ARRAY, Types.ARRAY, Types.ARRAY, Types.ARRAY, Types.ARRAY, Types.ARRAY, Types.ARRAY, Types.ARRAY, Types.ARRAY, Types.ARRAY, Types.ARRAY'; $strings = explode(',', preg_replace('/\s+/', '', $strings)); $integers = explode(',', preg_replace('/\s+/', '', $integers)); $length = count($strings); for ($i = 0; $i < $length; ++$i) { printf('map.put(%s, %s);', $integers[$i], $strings[$i]); echo PHP_EOL; }
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 35
Branch analysis from position: 35
2 jumps found. (Code = 44) Position 1 = 37, Position 2 = 26
Branch analysis from position: 37
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 26
2 jumps found. (Code = 44) Position 1 = 37, Position 2 = 26
Branch analysis from position: 37
Branch analysis from position: 26
filename:       /in/VDnhH
function name:  (null)
number of ops:  38
compiled vars:  !0 = $strings, !1 = $integers, !2 = $length, !3 = $i
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, '%22int2%22%2C%0A++++++++++++++++%22int4%22%2C+%22oid%22%2C%0A++++++++++++++++%22int8%22%2C%0A++++++++++++++++%22cash%22%2C+%22money%22%2C%0A++++++++++++++++%22numeric%22%2C%0A++++++++++++++++%22float4%22%2C%0A++++++++++++++++%22float8%22%2C%0A++++++++++++++++%22bpchar%22%2C+%22char%22%2C+%22char2%22%2C+%22char4%22%2C+%22char8%22%2C+%22char16%22%2C%0A++++++++++++++++%22varchar%22%2C+%22text%22%2C+%22name%22%2C+%22filename%22%2C%0A++++++++++++++++%22bytea%22%2C%0A++++++++++++++++%22bool%22%2C%0A++++++++++++++++%22bit%22%2C%0A++++++++++++++++%22date%22%2C%0A++++++++++++++++%22time%22%2C+%22timetz%22%2C%0A++++++++++++++++%22abstime%22%2C+%22timestamp%22%2C+%22timestamptz%22%2C%0A++++++++++++++++%22_bool%22%2C+%22_char%22%2C+%22_int2%22%2C+%22_int4%22%2C+%22_text%22%2C%0A++++++++++++++++%22_oid%22%2C+%22_varchar%22%2C+%22_int8%22%2C+%22_float4%22%2C+%22_float8%22%2C%0A++++++++++++++++%22_abstime%22%2C+%22_date%22%2C+%22_time%22%2C+%22_timestamp%22%2C+%22_numeric%22%2C%0A++++++++++++++++%22_bytea%22'
   23     1        ASSIGN                                                   !1, 'Types.SMALLINT%2C%0A++++++++++++++++Types.INTEGER%2C+Types.INTEGER%2C%0A++++++++++++++++Types.BIGINT%2C%0A++++++++++++++++Types.DOUBLE%2C+Types.DOUBLE%2C%0A++++++++++++++++Types.NUMERIC%2C%0A++++++++++++++++Types.REAL%2C%0A++++++++++++++++Types.DOUBLE%2C%0A++++++++++++++++Types.CHAR%2C+Types.CHAR%2C+Types.CHAR%2C+Types.CHAR%2C+Types.CHAR%2C+Types.CHAR%2C%0A++++++++++++++++Types.VARCHAR%2C+Types.VARCHAR%2C+Types.VARCHAR%2C+Types.VARCHAR%2C%0A++++++++++++++++Types.BINARY%2C%0A++++++++++++++++Types.BOOLEAN%2C%0A++++++++++++++++Types.BIT%2C%0A++++++++++++++++Types.DATE%2C%0A++++++++++++++++Types.TIME%2C+Types.TIME%2C%0A++++++++++++++++Types.TIMESTAMP%2C+Types.TIMESTAMP%2C+Types.TIMESTAMP%2C%0A++++++++++++++++Types.ARRAY%2C+Types.ARRAY%2C+Types.ARRAY%2C+Types.ARRAY%2C+Types.ARRAY%2C%0A++++++++++++++++Types.ARRAY%2C+Types.ARRAY%2C+Types.ARRAY%2C+Types.ARRAY%2C+Types.ARRAY%2C%0A++++++++++++++++Types.ARRAY%2C+Types.ARRAY%2C+Types.ARRAY%2C+Types.ARRAY%2C+Types.ARRAY%2C%0A++++++++++++++++Types.ARRAY'
   43     2        INIT_FCALL                                               'explode'
          3        SEND_VAL                                                 '%2C'
          4        INIT_FCALL                                               'preg_replace'
          5        SEND_VAL                                                 '%2F%5Cs%2B%2F'
          6        SEND_VAL                                                 ''
          7        SEND_VAR                                                 !0
          8        DO_ICALL                                         $6      
          9        SEND_VAR                                                 $6
         10        DO_ICALL                                         $7      
         11        ASSIGN                                                   !0, $7
   44    12        INIT_FCALL                                               'explode'
         13        SEND_VAL                                                 '%2C'
         14        INIT_FCALL                                               'preg_replace'
         15        SEND_VAL                                                 '%2F%5Cs%2B%2F'
         16        SEND_VAL                                                 ''
         17        SEND_VAR                                                 !1
         18        DO_ICALL                                         $9      
         19        SEND_VAR                                                 $9
         20        DO_ICALL                                         $10     
         21        ASSIGN                                                   !1, $10
   46    22        COUNT                                            ~12     !0
         23        ASSIGN                                                   !2, ~12
   48    24        ASSIGN                                                   !3, 0
         25      > JMP                                                      ->35
   49    26    >   INIT_FCALL                                               'printf'
         27        SEND_VAL                                                 'map.put%28%25s%2C+%25s%29%3B'
         28        FETCH_DIM_R                                      ~15     !1, !3
         29        SEND_VAL                                                 ~15
         30        FETCH_DIM_R                                      ~16     !0, !3
         31        SEND_VAL                                                 ~16
         32        DO_ICALL                                                 
   50    33        ECHO                                                     '%0A'
   48    34        PRE_INC                                                  !3
         35    >   IS_SMALLER                                               !3, !2
         36      > JMPNZ                                                    ~19, ->26
   51    37    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
155.49 ms | 1392 KiB | 19 Q