3v4l.org

run code in 300+ PHP versions simultaneously
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 29, Position 2 = 91
Branch analysis from position: 29
2 jumps found. (Code = 78) Position 1 = 30, Position 2 = 91
Branch analysis from position: 30
2 jumps found. (Code = 43) Position 1 = 62, Position 2 = 75
Branch analysis from position: 62
1 jumps found. (Code = 42) Position 1 = 76
Branch analysis from position: 76
2 jumps found. (Code = 43) Position 1 = 81, Position 2 = 86
Branch analysis from position: 81
1 jumps found. (Code = 42) Position 1 = 87
Branch analysis from position: 87
1 jumps found. (Code = 42) Position 1 = 29
Branch analysis from position: 29
Branch analysis from position: 86
1 jumps found. (Code = 42) Position 1 = 29
Branch analysis from position: 29
Branch analysis from position: 75
2 jumps found. (Code = 43) Position 1 = 81, Position 2 = 86
Branch analysis from position: 81
Branch analysis from position: 86
Branch analysis from position: 91
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 91
filename:       /in/pnXfM
function name:  (null)
number of ops:  93
compiled vars:  !0 = $fns, !1 = $fn, !2 = $param
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    6     0  E >   DECLARE_LAMBDA_FUNCTION                          ~3      [0]
          1        INIT_ARRAY                                       ~4      ~3
    7     2        DECLARE_LAMBDA_FUNCTION                          ~5      [1]
          3        ADD_ARRAY_ELEMENT                                ~4      ~5
    8     4        DECLARE_LAMBDA_FUNCTION                          ~6      [2]
          5        ADD_ARRAY_ELEMENT                                ~4      ~6
    9     6        DECLARE_LAMBDA_FUNCTION                          ~7      [3]
          7        ADD_ARRAY_ELEMENT                                ~4      ~7
   10     8        DECLARE_LAMBDA_FUNCTION                          ~8      [4]
          9        ADD_ARRAY_ELEMENT                                ~4      ~8
   11    10        DECLARE_LAMBDA_FUNCTION                          ~9      [5]
         11        ADD_ARRAY_ELEMENT                                ~4      ~9
   12    12        DECLARE_LAMBDA_FUNCTION                          ~10     [6]
         13        ADD_ARRAY_ELEMENT                                ~4      ~10
   13    14        DECLARE_LAMBDA_FUNCTION                          ~11     [7]
         15        ADD_ARRAY_ELEMENT                                ~4      ~11
   14    16        DECLARE_LAMBDA_FUNCTION                          ~12     [8]
         17        ADD_ARRAY_ELEMENT                                ~4      ~12
   15    18        DECLARE_LAMBDA_FUNCTION                          ~13     [9]
         19        ADD_ARRAY_ELEMENT                                ~4      ~13
   16    20        DECLARE_LAMBDA_FUNCTION                          ~14     [10]
         21        ADD_ARRAY_ELEMENT                                ~4      ~14
   17    22        DECLARE_LAMBDA_FUNCTION                          ~15     [11]
         23        ADD_ARRAY_ELEMENT                                ~4      ~15
   18    24        DECLARE_LAMBDA_FUNCTION                          ~16     [12]
         25        ADD_ARRAY_ELEMENT                                ~4      ~16
    5    26        ASSIGN                                                   !0, ~4
   21    27        ECHO                                                     'parameter%09allowsNull%09isOptional%09getDefaultValue%09getType%0A'
   23    28      > FE_RESET_R                                       $18     !0, ->91
         29    > > FE_FETCH_R                                               $18, !1, ->91
   24    30    >   NEW                                              $19     'ReflectionFunction'
         31        SEND_VAR_EX                                              !1
         32        DO_FCALL                                      0          
         33        INIT_METHOD_CALL                                         $19, 'getParameters'
         34        DO_FCALL                                      0  $21     
         35        FETCH_DIM_R                                      ~22     $21, 0
         36        ASSIGN                                                   !2, ~22
   26    37        INIT_FCALL                                               'substr'
         38        INIT_METHOD_CALL                                         !2, '__toString'
         39        DO_FCALL                                      0  $24     
         40        SEND_VAR                                                 $24
         41        SEND_VAL                                                 26
         42        SEND_VAL                                                 -2
         43        DO_ICALL                                         $25     
   27    44        CONCAT                                           ~26     $25, '%09'
         45        INIT_FCALL                                               'json_encode'
         46        INIT_METHOD_CALL                                         !2, 'allowsNull'
         47        DO_FCALL                                      0  $27     
         48        SEND_VAR                                                 $27
         49        DO_ICALL                                         $28     
         50        CONCAT                                           ~29     ~26, $28
   28    51        CONCAT                                           ~30     ~29, '%09'
         52        INIT_FCALL                                               'json_encode'
         53        INIT_METHOD_CALL                                         !2, 'isOptional'
         54        DO_FCALL                                      0  $31     
         55        SEND_VAR                                                 $31
         56        DO_ICALL                                         $32     
         57        CONCAT                                           ~33     ~30, $32
   29    58        CONCAT                                           ~34     ~33, '%09'
         59        INIT_METHOD_CALL                                         !2, 'isDefaultValueAvailable'
         60        DO_FCALL                                      0  $35     
         61      > JMPZ                                                     $35, ->75
         62    >   INIT_FCALL                                               'str_replace'
         63        SEND_VAL                                                 '%0A'
         64        SEND_VAL                                                 ''
         65        INIT_FCALL                                               'print_r'
         66        INIT_METHOD_CALL                                         !2, 'getDefaultValue'
         67        DO_FCALL                                      0  $36     
         68        SEND_VAR                                                 $36
         69        SEND_VAL                                                 <true>
         70        DO_ICALL                                         $37     
         71        SEND_VAR                                                 $37
         72        DO_ICALL                                         $38     
         73        QM_ASSIGN                                        ~39     $38
         74      > JMP                                                      ->76
         75    >   QM_ASSIGN                                        ~39     'throws+ReflectionException'
         76    >   CONCAT                                           ~40     ~34, ~39
   30    77        CONCAT                                           ~41     ~40, '%09'
         78        INIT_METHOD_CALL                                         !2, 'getType'
         79        DO_FCALL                                      0  $42     
         80      > JMPZ                                                     $42, ->86
         81    >   INIT_METHOD_CALL                                         !2, 'getType'
         82        DO_FCALL                                      0  $43     
         83        GET_CLASS                                        ~44     $43
         84        QM_ASSIGN                                        ~45     ~44
         85      > JMP                                                      ->87
         86    >   QM_ASSIGN                                        ~45     'null'
         87    >   CONCAT                                           ~46     ~41, ~45
   31    88        CONCAT                                           ~47     ~46, '%0A'
         89        ECHO                                                     ~47
   23    90      > JMP                                                      ->29
         91    >   FE_FREE                                                  $18
   32    92      > RETURN                                                   1


Dynamic Functions:
Dynamic Function 0
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/pnXfM
function name:  {closure}
number of ops:  2
compiled vars:  !0 = $str
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    6     0  E >   RECV                                             !0      
          1      > RETURN                                                   null

End of Dynamic Function 0

Dynamic Function 1
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/pnXfM
function name:  {closure}
number of ops:  2
compiled vars:  !0 = $str
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    7     0  E >   RECV_INIT                                        !0      'hello'
          1      > RETURN                                                   null

End of Dynamic Function 1

Dynamic Function 2
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/pnXfM
function name:  {closure}
number of ops:  2
compiled vars:  !0 = $str
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    8     0  E >   RECV                                             !0      
          1      > RETURN                                                   null

End of Dynamic Function 2

Dynamic Function 3
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/pnXfM
function name:  {closure}
number of ops:  2
compiled vars:  !0 = $str
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    9     0  E >   RECV_INIT                                        !0      null
          1      > RETURN                                                   null

End of Dynamic Function 3

Dynamic Function 4
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/pnXfM
function name:  {closure}
number of ops:  2
compiled vars:  !0 = $str
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   10     0  E >   RECV                                             !0      
          1      > RETURN                                                   null

End of Dynamic Function 4

Dynamic Function 5
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/pnXfM
function name:  {closure}
number of ops:  2
compiled vars:  !0 = $db
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   11     0  E >   RECV                                             !0      
          1      > RETURN                                                   null

End of Dynamic Function 5

Dynamic Function 6
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/pnXfM
function name:  {closure}
number of ops:  2
compiled vars:  !0 = $db
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   12     0  E >   RECV_INIT                                        !0      <const ast>
          1      > RETURN                                                   null

End of Dynamic Function 6

Dynamic Function 7
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/pnXfM
function name:  {closure}
number of ops:  2
compiled vars:  !0 = $str
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   13     0  E >   RECV                                             !0      
          1      > RETURN                                                   null

End of Dynamic Function 7

Dynamic Function 8
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/pnXfM
function name:  {closure}
number of ops:  2
compiled vars:  !0 = $str
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   14     0  E >   RECV_INIT                                        !0      'hello'
          1      > RETURN                                                   null

End of Dynamic Function 8

Dynamic Function 9
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/pnXfM
function name:  {closure}
number of ops:  2
compiled vars:  !0 = $str
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   15     0  E >   RECV_INIT                                        !0      'hello'
          1      > RETURN                                                   null

End of Dynamic Function 9

Dynamic Function 10
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/pnXfM
function name:  {closure}
number of ops:  2
compiled vars:  !0 = $str
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   16     0  E >   RECV                                             !0      
          1      > RETURN                                                   null

End of Dynamic Function 10

Dynamic Function 11
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/pnXfM
function name:  {closure}
number of ops:  2
compiled vars:  !0 = $str
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   17     0  E >   RECV_INIT                                        !0      null
          1      > RETURN                                                   null

End of Dynamic Function 11

Dynamic Function 12
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/pnXfM
function name:  {closure}
number of ops:  2
compiled vars:  !0 = $str
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   18     0  E >   RECV_INIT                                        !0      'hello'
          1      > RETURN                                                   null

End of Dynamic Function 12

Class Database: [no user functions]

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
176.05 ms | 989 KiB | 17 Q