3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Environment { public function getDomainName() { return 'wut'; } } $max_loops = 100000; $environment = new Environment(); $goal = array( 'listarArticulosAdmin', 'editarArticuloAdmin', 'editarDatosEditorAdmin', 'menuAdmin', 'crearArticuloAdmin', 'borrarArticuloAdmin', 'borrarModeradorAdmin', 'editarMotivoArticuloAdmin', 'listarPagosAdmin', 'editarPagoAdmin', 'editarArticuloCategoriasAdmin', 'crearArticulosAdmin', 'confirmarFicheroPaypalAdmin', 'generarFicheroPaypalAdmin', 'verFicheroPaypalAdmin', ); $size = sizeof($goal)-1; $time = microtime(true); for($i = 0; $i < $max_loops; $i++) { $index = mt_rand(0, $size); if ($environment->getDomainName() != "res.hotelkey.com" && ($goal[$index] == "listarArticulosAdmin" || $goal[$index] == "editarArticuloAdmin" || $goal[$index] == "editarArticulosAdmin" || $goal[$index] == "listarEditoresAdmin" || $goal[$index] == "editarDatosEditorAdmin" || $goal[$index] == "menuAdmin" || $goal[$index] == "crearArticuloAdmin" || $goal[$index] == "borrarArticuloAdmin" || $goal[$index] == "borrarEditorAdmin" || $goal[$index] == "editarModeradorAdmin" || $goal[$index] == "borrarModeradorAdmin" || $goal[$index] == "editarMotivoArticuloAdmin" || $goal[$index] == "borrarMotivoArticuloAdmin" || $goal[$index] == "listarNotificacionesAdmin" || $goal[$index] == "listarPagosAdmin" || $goal[$index] == "editarPagoAdmin" || $goal[$index] == "editarArticuloCategoriasAdmin" || $goal[$index] == "actualizarEditoresAdmin" || $goal[$index] == "crearArticulosAdmin" || $goal[$index] == "confirmarFicheroPaypalAdmin" || $goal[$index] == "generarFicheroPaypalAdmin" || $goal[$index] == "listarFicherosPaypalAdmin" || $goal[$index] == "editarFicheroPaypalAdmin" || $goal[$index] == "verFicheroPaypalAdmin" ) ) { $access = false; } } $end = microtime(true); echo "Time elapsed: ".($end - $time)."\n";
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 121
Branch analysis from position: 121
2 jumps found. (Code = 44) Position 1 = 123, Position 2 = 14
Branch analysis from position: 123
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 14
2 jumps found. (Code = 46) Position 1 = 23, Position 2 = 118
Branch analysis from position: 23
2 jumps found. (Code = 47) Position 1 = 26, Position 2 = 29
Branch analysis from position: 26
2 jumps found. (Code = 47) Position 1 = 30, Position 2 = 33
Branch analysis from position: 30
2 jumps found. (Code = 47) Position 1 = 34, Position 2 = 37
Branch analysis from position: 34
2 jumps found. (Code = 47) Position 1 = 38, Position 2 = 41
Branch analysis from position: 38
2 jumps found. (Code = 47) Position 1 = 42, Position 2 = 45
Branch analysis from position: 42
2 jumps found. (Code = 47) Position 1 = 46, Position 2 = 49
Branch analysis from position: 46
2 jumps found. (Code = 47) Position 1 = 50, Position 2 = 53
Branch analysis from position: 50
2 jumps found. (Code = 47) Position 1 = 54, Position 2 = 57
Branch analysis from position: 54
2 jumps found. (Code = 47) Position 1 = 58, Position 2 = 61
Branch analysis from position: 58
2 jumps found. (Code = 47) Position 1 = 62, Position 2 = 65
Branch analysis from position: 62
2 jumps found. (Code = 47) Position 1 = 66, Position 2 = 69
Branch analysis from position: 66
2 jumps found. (Code = 47) Position 1 = 70, Position 2 = 73
Branch analysis from position: 70
2 jumps found. (Code = 47) Position 1 = 74, Position 2 = 77
Branch analysis from position: 74
2 jumps found. (Code = 47) Position 1 = 78, Position 2 = 81
Branch analysis from position: 78
2 jumps found. (Code = 47) Position 1 = 82, Position 2 = 85
Branch analysis from position: 82
2 jumps found. (Code = 47) Position 1 = 86, Position 2 = 89
Branch analysis from position: 86
2 jumps found. (Code = 47) Position 1 = 90, Position 2 = 93
Branch analysis from position: 90
2 jumps found. (Code = 47) Position 1 = 94, Position 2 = 97
Branch analysis from position: 94
2 jumps found. (Code = 47) Position 1 = 98, Position 2 = 101
Branch analysis from position: 98
2 jumps found. (Code = 47) Position 1 = 102, Position 2 = 105
Branch analysis from position: 102
2 jumps found. (Code = 47) Position 1 = 106, Position 2 = 109
Branch analysis from position: 106
2 jumps found. (Code = 47) Position 1 = 110, Position 2 = 113
Branch analysis from position: 110
2 jumps found. (Code = 47) Position 1 = 114, Position 2 = 117
Branch analysis from position: 114
2 jumps found. (Code = 43) Position 1 = 119, Position 2 = 120
Branch analysis from position: 119
2 jumps found. (Code = 44) Position 1 = 123, Position 2 = 14
Branch analysis from position: 123
Branch analysis from position: 14
Branch analysis from position: 120
Branch analysis from position: 117
Branch analysis from position: 113
Branch analysis from position: 109
Branch analysis from position: 105
Branch analysis from position: 101
Branch analysis from position: 97
Branch analysis from position: 93
Branch analysis from position: 89
Branch analysis from position: 85
Branch analysis from position: 81
Branch analysis from position: 77
Branch analysis from position: 73
Branch analysis from position: 69
Branch analysis from position: 65
Branch analysis from position: 61
Branch analysis from position: 57
Branch analysis from position: 53
Branch analysis from position: 49
Branch analysis from position: 45
Branch analysis from position: 41
Branch analysis from position: 37
Branch analysis from position: 33
Branch analysis from position: 29
Branch analysis from position: 118
filename:       /in/nC87f
function name:  (null)
number of ops:  132
compiled vars:  !0 = $max_loops, !1 = $environment, !2 = $goal, !3 = $size, !4 = $time, !5 = $i, !6 = $index, !7 = $access, !8 = $end
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   11     0  E >   ASSIGN                                                   !0, 100000
   12     1        NEW                                              $10     'Environment'
          2        DO_FCALL                                      0          
          3        ASSIGN                                                   !1, $10
   14     4        ASSIGN                                                   !2, <array>
   32     5        COUNT                                            ~14     !2
          6        SUB                                              ~15     ~14, 1
          7        ASSIGN                                                   !3, ~15
   34     8        INIT_FCALL                                               'microtime'
          9        SEND_VAL                                                 <true>
         10        DO_ICALL                                         $17     
         11        ASSIGN                                                   !4, $17
   36    12        ASSIGN                                                   !5, 0
         13      > JMP                                                      ->121
   37    14    >   INIT_FCALL                                               'mt_rand'
         15        SEND_VAL                                                 0
         16        SEND_VAR                                                 !3
         17        DO_ICALL                                         $20     
         18        ASSIGN                                                   !6, $20
   38    19        INIT_METHOD_CALL                                         !1, 'getDomainName'
         20        DO_FCALL                                      0  $22     
         21        IS_NOT_EQUAL                                     ~23     $22, 'res.hotelkey.com'
         22      > JMPZ_EX                                          ~23     ~23, ->118
   39    23    >   FETCH_DIM_R                                      ~24     !2, !6
         24        IS_EQUAL                                         ~25     ~24, 'listarArticulosAdmin'
         25      > JMPNZ_EX                                         ~25     ~25, ->29
   40    26    >   FETCH_DIM_R                                      ~26     !2, !6
         27        IS_EQUAL                                         ~27     ~26, 'editarArticuloAdmin'
         28        BOOL                                             ~25     ~27
         29    > > JMPNZ_EX                                         ~25     ~25, ->33
   41    30    >   FETCH_DIM_R                                      ~28     !2, !6
         31        IS_EQUAL                                         ~29     ~28, 'editarArticulosAdmin'
         32        BOOL                                             ~25     ~29
         33    > > JMPNZ_EX                                         ~25     ~25, ->37
   42    34    >   FETCH_DIM_R                                      ~30     !2, !6
         35        IS_EQUAL                                         ~31     ~30, 'listarEditoresAdmin'
         36        BOOL                                             ~25     ~31
         37    > > JMPNZ_EX                                         ~25     ~25, ->41
   43    38    >   FETCH_DIM_R                                      ~32     !2, !6
         39        IS_EQUAL                                         ~33     ~32, 'editarDatosEditorAdmin'
         40        BOOL                                             ~25     ~33
         41    > > JMPNZ_EX                                         ~25     ~25, ->45
   44    42    >   FETCH_DIM_R                                      ~34     !2, !6
         43        IS_EQUAL                                         ~35     ~34, 'menuAdmin'
         44        BOOL                                             ~25     ~35
         45    > > JMPNZ_EX                                         ~25     ~25, ->49
   45    46    >   FETCH_DIM_R                                      ~36     !2, !6
         47        IS_EQUAL                                         ~37     ~36, 'crearArticuloAdmin'
         48        BOOL                                             ~25     ~37
         49    > > JMPNZ_EX                                         ~25     ~25, ->53
   46    50    >   FETCH_DIM_R                                      ~38     !2, !6
         51        IS_EQUAL                                         ~39     ~38, 'borrarArticuloAdmin'
         52        BOOL                                             ~25     ~39
         53    > > JMPNZ_EX                                         ~25     ~25, ->57
   47    54    >   FETCH_DIM_R                                      ~40     !2, !6
         55        IS_EQUAL                                         ~41     ~40, 'borrarEditorAdmin'
         56        BOOL                                             ~25     ~41
         57    > > JMPNZ_EX                                         ~25     ~25, ->61
   48    58    >   FETCH_DIM_R                                      ~42     !2, !6
         59        IS_EQUAL                                         ~43     ~42, 'editarModeradorAdmin'
         60        BOOL                                             ~25     ~43
         61    > > JMPNZ_EX                                         ~25     ~25, ->65
   49    62    >   FETCH_DIM_R                                      ~44     !2, !6
         63        IS_EQUAL                                         ~45     ~44, 'borrarModeradorAdmin'
         64        BOOL                                             ~25     ~45
         65    > > JMPNZ_EX                                         ~25     ~25, ->69
   50    66    >   FETCH_DIM_R                                      ~46     !2, !6
         67        IS_EQUAL                                         ~47     ~46, 'editarMotivoArticuloAdmin'
         68        BOOL                                             ~25     ~47
         69    > > JMPNZ_EX                                         ~25     ~25, ->73
   51    70    >   FETCH_DIM_R                                      ~48     !2, !6
         71        IS_EQUAL                                         ~49     ~48, 'borrarMotivoArticuloAdmin'
         72        BOOL                                             ~25     ~49
         73    > > JMPNZ_EX                                         ~25     ~25, ->77
   52    74    >   FETCH_DIM_R                                      ~50     !2, !6
         75        IS_EQUAL                                         ~51     ~50, 'listarNotificacionesAdmin'
         76        BOOL                                             ~25     ~51
         77    > > JMPNZ_EX                                         ~25     ~25, ->81
   53    78    >   FETCH_DIM_R                                      ~52     !2, !6
         79        IS_EQUAL                                         ~53     ~52, 'listarPagosAdmin'
         80        BOOL                                             ~25     ~53
         81    > > JMPNZ_EX                                         ~25     ~25, ->85
   54    82    >   FETCH_DIM_R                                      ~54     !2, !6
         83        IS_EQUAL                                         ~55     ~54, 'editarPagoAdmin'
         84        BOOL                                             ~25     ~55
         85    > > JMPNZ_EX                                         ~25     ~25, ->89
   55    86    >   FETCH_DIM_R                                      ~56     !2, !6
         87        IS_EQUAL                                         ~57     ~56, 'editarArticuloCategoriasAdmin'
         88        BOOL                                             ~25     ~57
         89    > > JMPNZ_EX                                         ~25     ~25, ->93
   56    90    >   FETCH_DIM_R                                      ~58     !2, !6
         91        IS_EQUAL                                         ~59     ~58, 'actualizarEditoresAdmin'
         92        BOOL                                             ~25     ~59
         93    > > JMPNZ_EX                                         ~25     ~25, ->97
   57    94    >   FETCH_DIM_R                                      ~60     !2, !6
         95        IS_EQUAL                                         ~61     ~60, 'crearArticulosAdmin'
         96        BOOL                                             ~25     ~61
         97    > > JMPNZ_EX                                         ~25     ~25, ->101
   58    98    >   FETCH_DIM_R                                      ~62     !2, !6
         99        IS_EQUAL                                         ~63     ~62, 'confirmarFicheroPaypalAdmin'
        100        BOOL                                             ~25     ~63
        101    > > JMPNZ_EX                                         ~25     ~25, ->105
   59   102    >   FETCH_DIM_R                                      ~64     !2, !6
        103        IS_EQUAL                                         ~65     ~64, 'generarFicheroPaypalAdmin'
        104        BOOL                                             ~25     ~65
        105    > > JMPNZ_EX                                         ~25     ~25, ->109
   60   106    >   FETCH_DIM_R                                      ~66     !2, !6
        107        IS_EQUAL                                         ~67     ~66, 'listarFicherosPaypalAdmin'
        108        BOOL                                             ~25     ~67
        109    > > JMPNZ_EX                                         ~25     ~25, ->113
   61   110    >   FETCH_DIM_R                                      ~68     !2, !6
        111        IS_EQUAL                                         ~69     ~68, 'editarFicheroPaypalAdmin'
        112        BOOL                                             ~25     ~69
        113    > > JMPNZ_EX                                         ~25     ~25, ->117
   62   114    >   FETCH_DIM_R                                      ~70     !2, !6
        115        IS_EQUAL                                         ~71     ~70, 'verFicheroPaypalAdmin'
        116        BOOL                                             ~25     ~71
        117    >   BOOL                                             ~23     ~25
        118    > > JMPZ                                                     ~23, ->120
   65   119    >   ASSIGN                                                   !7, <false>
   36   120    >   PRE_INC                                                  !5
        121    >   IS_SMALLER                                               !5, !0
        122      > JMPNZ                                                    ~74, ->14
   68   123    >   INIT_FCALL                                               'microtime'
        124        SEND_VAL                                                 <true>
        125        DO_ICALL                                         $75     
        126        ASSIGN                                                   !8, $75
   70   127        SUB                                              ~77     !8, !4
        128        CONCAT                                           ~78     'Time+elapsed%3A+', ~77
        129        CONCAT                                           ~79     ~78, '%0A'
        130        ECHO                                                     ~79
        131      > RETURN                                                   1

Class Environment:
Function getdomainname:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/nC87f
function name:  getDomainName
number of ops:  2
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    7     0  E > > RETURN                                                   'wut'
    8     1*     > RETURN                                                   null

End of function getdomainname

End of class Environment.

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
145.03 ms | 1413 KiB | 17 Q