3v4l.org

run code in 300+ PHP versions simultaneously
<?php error_reporting(E_ERROR); $xyz[]="a"; var_dump($xyz); if($xyz != '') { echo "xyz is not empty! good to go!\n"; $pw1 = 'my cool password keep it secrete please'; $pw2 = 'some other password'; $abc = strcmp($xyz, $pw1); if ($abc == 0) { echo "LOLPHP: yes '$pw1' is the same as '$xyz'\n"; } $def = strcmp($xyz, $pw2); if ($def == 0) { echo "LOLPHP: yep '$pw2' is the same as '$xyz'\n"; } $ghi = strcmp($pw1, $pw2); if ($ghi != 0) { echo "'$pw1' isn't the same as '$pw2'\n"; } else {echo "i am strcmp, and i declare that '$pw1' is the same as '$pw2'!!\n"; } $jkl = strcmp($xyz, $xyz); echo "jkl = $jkl\n"; }
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 10, Position 2 = 68
Branch analysis from position: 10
2 jumps found. (Code = 43) Position 1 = 20, Position 2 = 26
Branch analysis from position: 20
2 jumps found. (Code = 43) Position 1 = 33, Position 2 = 39
Branch analysis from position: 33
2 jumps found. (Code = 43) Position 1 = 46, Position 2 = 53
Branch analysis from position: 46
1 jumps found. (Code = 42) Position 1 = 59
Branch analysis from position: 59
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 53
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 39
Branch analysis from position: 26
Branch analysis from position: 68
filename:       /in/c9LgN
function name:  (null)
number of ops:  69
compiled vars:  !0 = $xyz, !1 = $pw1, !2 = $pw2, !3 = $abc, !4 = $def, !5 = $ghi, !6 = $jkl
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   INIT_FCALL                                               'error_reporting'
          1        SEND_VAL                                                 1
          2        DO_ICALL                                                 
    3     3        ASSIGN_DIM                                               !0
          4        OP_DATA                                                  'a'
    4     5        INIT_FCALL                                               'var_dump'
          6        SEND_VAR                                                 !0
          7        DO_ICALL                                                 
    6     8        IS_NOT_EQUAL                                             !0, ''
          9      > JMPZ                                                     ~10, ->68
    8    10    >   ECHO                                                     'xyz+is+not+empty%21+good+to+go%21%0A'
    9    11        ASSIGN                                                   !1, 'my+cool+password+keep+it+secrete+please'
   10    12        ASSIGN                                                   !2, 'some+other+password'
   11    13        INIT_FCALL                                               'strcmp'
         14        SEND_VAR                                                 !0
         15        SEND_VAR                                                 !1
         16        DO_ICALL                                         $13     
         17        ASSIGN                                                   !3, $13
   12    18        IS_EQUAL                                                 !3, 0
         19      > JMPZ                                                     ~15, ->26
         20    >   ROPE_INIT                                     5  ~17     'LOLPHP%3A+yes+%27'
         21        ROPE_ADD                                      1  ~17     ~17, !1
         22        ROPE_ADD                                      2  ~17     ~17, '%27+is+the+same+as+%27'
         23        ROPE_ADD                                      3  ~17     ~17, !0
         24        ROPE_END                                      4  ~16     ~17, '%27%0A'
         25        ECHO                                                     ~16
   13    26    >   INIT_FCALL                                               'strcmp'
         27        SEND_VAR                                                 !0
         28        SEND_VAR                                                 !2
         29        DO_ICALL                                         $20     
         30        ASSIGN                                                   !4, $20
   14    31        IS_EQUAL                                                 !4, 0
         32      > JMPZ                                                     ~22, ->39
         33    >   ROPE_INIT                                     5  ~24     'LOLPHP%3A+yep+%27'
         34        ROPE_ADD                                      1  ~24     ~24, !2
         35        ROPE_ADD                                      2  ~24     ~24, '%27+is+the+same+as+%27'
         36        ROPE_ADD                                      3  ~24     ~24, !0
         37        ROPE_END                                      4  ~23     ~24, '%27%0A'
         38        ECHO                                                     ~23
   15    39    >   INIT_FCALL                                               'strcmp'
         40        SEND_VAR                                                 !1
         41        SEND_VAR                                                 !2
         42        DO_ICALL                                         $27     
         43        ASSIGN                                                   !5, $27
   16    44        IS_NOT_EQUAL                                             !5, 0
         45      > JMPZ                                                     ~29, ->53
         46    >   ROPE_INIT                                     5  ~31     '%27'
         47        ROPE_ADD                                      1  ~31     ~31, !1
         48        ROPE_ADD                                      2  ~31     ~31, '%27+isn%27t+the+same+as+%27'
         49        ROPE_ADD                                      3  ~31     ~31, !2
         50        ROPE_END                                      4  ~30     ~31, '%27%0A'
         51        ECHO                                                     ~30
         52      > JMP                                                      ->59
   17    53    >   ROPE_INIT                                     5  ~35     'i+am+strcmp%2C+and+i+declare+that+%27'
         54        ROPE_ADD                                      1  ~35     ~35, !1
         55        ROPE_ADD                                      2  ~35     ~35, '%27+is+the+same+as+%27'
         56        ROPE_ADD                                      3  ~35     ~35, !2
         57        ROPE_END                                      4  ~34     ~35, '%27%21%21%0A'
         58        ECHO                                                     ~34
   19    59    >   INIT_FCALL                                               'strcmp'
         60        SEND_VAR                                                 !0
         61        SEND_VAR                                                 !0
         62        DO_ICALL                                         $38     
         63        ASSIGN                                                   !6, $38
   20    64        ROPE_INIT                                     3  ~41     'jkl+%3D+'
         65        ROPE_ADD                                      1  ~41     ~41, !6
         66        ROPE_END                                      2  ~40     ~41, '%0A'
         67        ECHO                                                     ~40
   21    68    > > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
156.99 ms | 1392 KiB | 19 Q