3v4l.org

run code in 300+ PHP versions simultaneously
<?php function a() { $minVal = null; $numArgs = func_num_args(); $argList = func_get_args(); for($ii=0; $ii<$numArgs; $ii++) { if(is_int($argList[$ii])) { if(is_null($minVal)) { $minVal = $argList[$ii]; } else { $minVal = ($minVal > $argList[$ii] ) ? $argList[$ii] : $minVal; } } } if(is_null($minVal)) { return 'no valid int passed in'; } return 'min int length is : '. $minVal; } echo a();
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/rp96u
function name:  (null)
number of ops:  4
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   20     0  E >   INIT_FCALL                                               'a'
          1        DO_FCALL                                      0  $0      
          2        ECHO                                                     $0
          3      > RETURN                                                   1

Function a:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 24
Branch analysis from position: 24
2 jumps found. (Code = 44) Position 1 = 26, Position 2 = 7
Branch analysis from position: 26
2 jumps found. (Code = 43) Position 1 = 28, Position 2 = 29
Branch analysis from position: 28
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 29
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 7
2 jumps found. (Code = 43) Position 1 = 10, Position 2 = 23
Branch analysis from position: 10
2 jumps found. (Code = 43) Position 1 = 12, Position 2 = 15
Branch analysis from position: 12
1 jumps found. (Code = 42) Position 1 = 23
Branch analysis from position: 23
2 jumps found. (Code = 44) Position 1 = 26, Position 2 = 7
Branch analysis from position: 26
Branch analysis from position: 7
Branch analysis from position: 15
2 jumps found. (Code = 43) Position 1 = 18, Position 2 = 21
Branch analysis from position: 18
1 jumps found. (Code = 42) Position 1 = 22
Branch analysis from position: 22
2 jumps found. (Code = 44) Position 1 = 26, Position 2 = 7
Branch analysis from position: 26
Branch analysis from position: 7
Branch analysis from position: 21
2 jumps found. (Code = 44) Position 1 = 26, Position 2 = 7
Branch analysis from position: 26
Branch analysis from position: 7
Branch analysis from position: 23
filename:       /in/rp96u
function name:  a
number of ops:  32
compiled vars:  !0 = $minVal, !1 = $numArgs, !2 = $argList, !3 = $ii
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, null
    4     1        FUNC_NUM_ARGS                                    ~5      
          2        ASSIGN                                                   !1, ~5
    5     3        FUNC_GET_ARGS                                    ~7      
          4        ASSIGN                                                   !2, ~7
    6     5        ASSIGN                                                   !3, 0
          6      > JMP                                                      ->24
    7     7    >   FETCH_DIM_R                                      ~10     !2, !3
          8        TYPE_CHECK                                   16          ~10
          9      > JMPZ                                                     ~11, ->23
    8    10    >   TYPE_CHECK                                    2          !0
         11      > JMPZ                                                     ~12, ->15
    9    12    >   FETCH_DIM_R                                      ~13     !2, !3
         13        ASSIGN                                                   !0, ~13
         14      > JMP                                                      ->23
   11    15    >   FETCH_DIM_R                                      ~15     !2, !3
         16        IS_SMALLER                                               ~15, !0
         17      > JMPZ                                                     ~16, ->21
         18    >   FETCH_DIM_R                                      ~17     !2, !3
         19        QM_ASSIGN                                        ~18     ~17
         20      > JMP                                                      ->22
         21    >   QM_ASSIGN                                        ~18     !0
         22    >   ASSIGN                                                   !0, ~18
    6    23    >   PRE_INC                                                  !3
         24    >   IS_SMALLER                                               !3, !1
         25      > JMPNZ                                                    ~21, ->7
   15    26    >   TYPE_CHECK                                    2          !0
         27      > JMPZ                                                     ~22, ->29
   16    28    > > RETURN                                                   'no+valid+int+passed+in'
   18    29    >   CONCAT                                           ~23     'min+int+length+is+%3A+', !0
         30      > RETURN                                                   ~23
   19    31*     > RETURN                                                   null

End of function a

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
154.85 ms | 1403 KiB | 14 Q