3v4l.org

run code in 300+ PHP versions simultaneously
<?php include "robot.html"; $verz="1.0"; $comPort = "/dev/ttyACM0"; /*change to correct com port */ if (isset($_POST["rcmd"])) { $rcmd = $_POST["rcmd"]; switch ($rcmd) { case D: $fp =fopen($comPort, "w"); fwrite($fp, chr(100)); fclose($fp); break; case A: $fp =fopen($comPort, "w"); fwrite($fp, chr(97)); fclose($fp); break; case W: $fp =fopen($comPort, "w"); fwrite($fp, chr(119)); fclose($fp); break; case S: $fp =fopen($comPort, "w"); fwrite($fp, chr(115)); fclose($fp); break; case T: $fp =fopen($comPort, "w"); fwrite($fp, chr(116)); fclose($fp); break; case G: $fp =fopen($comPort, "w"); fwrite($fp, chr(103)); fclose($fp); break; case H: $fp =fopen($comPort, "w"); fwrite($fp, chr(104)); fclose($fp); break; case F: $fp =fopen($comPort, "w"); fwrite($fp, chr(102)); fclose($fp); break; case U: $fp =fopen($comPort, "w"); fwrite($fp, chr(117)); fclose($fp); break; case J: $fp =fopen($comPort, "w"); fwrite($fp, chr(106)); fclose($fp); break; case Lights: $fp =fopen($comPort, "w"); fwrite($fp, chr(110)); fclose($fp); break; case Home: $fp =fopen($comPort, "w"); fwrite($fp, chr(109)); fclose($fp); break; default: die('Something is wrong. Fix it.'); } } ?> <html> <body> <center><h1>Control Mivinci!</h1><b>Version <?php echo $verz; ?></b></center> <body style="background-color:yellow;"> &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <div style="float: left; width: 700px; height: 500px;"> <iframe frameborder="0" width="700" height="500" src="http://192.168.23.111:8081/"></iframe> </div> <div id="controls" style="float:left;"> <form method="post" action="<?php echo $PHP_SELF;?>"> <br /> <br /> <br /> <br /> &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <input type="submit" value="W" name="rcmd"> <br/> <br /> &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <input type="submit" value="A" name="rcmd"> &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <input type="submit" value="D" name="rcmd"> <br/> <br /> &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <input type="submit" value="S" name="rcmd"> <br/> <br /> <br /> &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <input type="submit" value="T" name="rcmd"> <br/> <br /> &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <input type="submit" value="F" name="rcmd"> &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <input type="submit" value="H" name="rcmd"><br/> <br /> &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <input type="submit" value="G" name="rcmd"> <br /> <br /> &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <input type="submit" value="U" name="rcmd"> <br/> <br /> <br /> &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp <input type="submit" value="V" name="rcmd"><br/> <br /> <br /> &nbsp&nbsp&nbsp&nbsp <input type="submit" value="Home" name="rcmd"> &nbsp <input type="submit" value="Lights" name="rcmd"> </form> </div> </div> <div class="clear: both;">&nbsp;</div> <br /> <br /> <br /> </body> </html>
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 6, Position 2 = 203
Branch analysis from position: 6
2 jumps found. (Code = 44) Position 1 = 12, Position 2 = 46
Branch analysis from position: 12
2 jumps found. (Code = 44) Position 1 = 15, Position 2 = 59
Branch analysis from position: 15
2 jumps found. (Code = 44) Position 1 = 18, Position 2 = 72
Branch analysis from position: 18
2 jumps found. (Code = 44) Position 1 = 21, Position 2 = 85
Branch analysis from position: 21
2 jumps found. (Code = 44) Position 1 = 24, Position 2 = 98
Branch analysis from position: 24
2 jumps found. (Code = 44) Position 1 = 27, Position 2 = 111
Branch analysis from position: 27
2 jumps found. (Code = 44) Position 1 = 30, Position 2 = 124
Branch analysis from position: 30
2 jumps found. (Code = 44) Position 1 = 33, Position 2 = 137
Branch analysis from position: 33
2 jumps found. (Code = 44) Position 1 = 36, Position 2 = 150
Branch analysis from position: 36
2 jumps found. (Code = 44) Position 1 = 39, Position 2 = 163
Branch analysis from position: 39
2 jumps found. (Code = 44) Position 1 = 42, Position 2 = 176
Branch analysis from position: 42
2 jumps found. (Code = 44) Position 1 = 45, Position 2 = 189
Branch analysis from position: 45
1 jumps found. (Code = 42) Position 1 = 202
Branch analysis from position: 202
1 jumps found. (Code = 79) Position 1 = -2
Branch analysis from position: 189
1 jumps found. (Code = 42) Position 1 = 203
Branch analysis from position: 203
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 176
1 jumps found. (Code = 42) Position 1 = 203
Branch analysis from position: 203
Branch analysis from position: 163
1 jumps found. (Code = 42) Position 1 = 203
Branch analysis from position: 203
Branch analysis from position: 150
1 jumps found. (Code = 42) Position 1 = 203
Branch analysis from position: 203
Branch analysis from position: 137
1 jumps found. (Code = 42) Position 1 = 203
Branch analysis from position: 203
Branch analysis from position: 124
1 jumps found. (Code = 42) Position 1 = 203
Branch analysis from position: 203
Branch analysis from position: 111
1 jumps found. (Code = 42) Position 1 = 203
Branch analysis from position: 203
Branch analysis from position: 98
1 jumps found. (Code = 42) Position 1 = 203
Branch analysis from position: 203
Branch analysis from position: 85
1 jumps found. (Code = 42) Position 1 = 203
Branch analysis from position: 203
Branch analysis from position: 72
1 jumps found. (Code = 42) Position 1 = 203
Branch analysis from position: 203
Branch analysis from position: 59
1 jumps found. (Code = 42) Position 1 = 203
Branch analysis from position: 203
Branch analysis from position: 46
1 jumps found. (Code = 42) Position 1 = 203
Branch analysis from position: 203
Branch analysis from position: 203
filename:       /in/eTT08
function name:  (null)
number of ops:  209
compiled vars:  !0 = $verz, !1 = $comPort, !2 = $rcmd, !3 = $fp, !4 = $PHP_SELF
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   INCLUDE_OR_EVAL                                          'robot.html', INCLUDE
    5     1        ASSIGN                                                   !0, '1.0'
    6     2        ASSIGN                                                   !1, '%2Fdev%2FttyACM0'
    8     3        FETCH_IS                                         ~8      '_POST'
          4        ISSET_ISEMPTY_DIM_OBJ                         0          ~8, 'rcmd'
          5      > JMPZ                                                     ~9, ->203
    9     6    >   FETCH_R                      global              ~10     '_POST'
          7        FETCH_DIM_R                                      ~11     ~10, 'rcmd'
          8        ASSIGN                                                   !2, ~11
   12     9        FETCH_CONSTANT                                   ~14     'D'
         10        IS_EQUAL                                                 !2, ~14
         11      > JMPNZ                                                    ~13, ->46
   17    12    >   FETCH_CONSTANT                                   ~15     'A'
         13        IS_EQUAL                                                 !2, ~15
         14      > JMPNZ                                                    ~13, ->59
   22    15    >   FETCH_CONSTANT                                   ~16     'W'
         16        IS_EQUAL                                                 !2, ~16
         17      > JMPNZ                                                    ~13, ->72
   27    18    >   FETCH_CONSTANT                                   ~17     'S'
         19        IS_EQUAL                                                 !2, ~17
         20      > JMPNZ                                                    ~13, ->85
   34    21    >   FETCH_CONSTANT                                   ~18     'T'
         22        IS_EQUAL                                                 !2, ~18
         23      > JMPNZ                                                    ~13, ->98
   39    24    >   FETCH_CONSTANT                                   ~19     'G'
         25        IS_EQUAL                                                 !2, ~19
         26      > JMPNZ                                                    ~13, ->111
   44    27    >   FETCH_CONSTANT                                   ~20     'H'
         28        IS_EQUAL                                                 !2, ~20
         29      > JMPNZ                                                    ~13, ->124
   49    30    >   FETCH_CONSTANT                                   ~21     'F'
         31        IS_EQUAL                                                 !2, ~21
         32      > JMPNZ                                                    ~13, ->137
   55    33    >   FETCH_CONSTANT                                   ~22     'U'
         34        IS_EQUAL                                                 !2, ~22
         35      > JMPNZ                                                    ~13, ->150
   60    36    >   FETCH_CONSTANT                                   ~23     'J'
         37        IS_EQUAL                                                 !2, ~23
         38      > JMPNZ                                                    ~13, ->163
   65    39    >   FETCH_CONSTANT                                   ~24     'Lights'
         40        IS_EQUAL                                                 !2, ~24
         41      > JMPNZ                                                    ~13, ->176
   70    42    >   FETCH_CONSTANT                                   ~25     'Home'
         43        IS_EQUAL                                                 !2, ~25
         44      > JMPNZ                                                    ~13, ->189
         45    > > JMP                                                      ->202
   13    46    >   INIT_FCALL                                               'fopen'
         47        SEND_VAR                                                 !1
         48        SEND_VAL                                                 'w'
         49        DO_ICALL                                         $26     
         50        ASSIGN                                                   !3, $26
   14    51        INIT_FCALL                                               'fwrite'
         52        SEND_VAR                                                 !3
         53        SEND_VAL                                                 'd'
         54        DO_ICALL                                                 
   15    55        INIT_FCALL                                               'fclose'
         56        SEND_VAR                                                 !3
         57        DO_ICALL                                                 
   16    58      > JMP                                                      ->203
   18    59    >   INIT_FCALL                                               'fopen'
         60        SEND_VAR                                                 !1
         61        SEND_VAL                                                 'w'
         62        DO_ICALL                                         $30     
         63        ASSIGN                                                   !3, $30
   19    64        INIT_FCALL                                               'fwrite'
         65        SEND_VAR                                                 !3
         66        SEND_VAL                                                 'a'
         67        DO_ICALL                                                 
   20    68        INIT_FCALL                                               'fclose'
         69        SEND_VAR                                                 !3
         70        DO_ICALL                                                 
   21    71      > JMP                                                      ->203
   23    72    >   INIT_FCALL                                               'fopen'
         73        SEND_VAR                                                 !1
         74        SEND_VAL                                                 'w'
         75        DO_ICALL                                         $34     
         76        ASSIGN                                                   !3, $34
   24    77        INIT_FCALL                                               'fwrite'
         78        SEND_VAR                                                 !3
         79        SEND_VAL                                                 'w'
         80        DO_ICALL                                                 
   25    81        INIT_FCALL                                               'fclose'
         82        SEND_VAR                                                 !3
         83        DO_ICALL                                                 
   26    84      > JMP                                                      ->203
   28    85    >   INIT_FCALL                                               'fopen'
         86        SEND_VAR                                                 !1
         87        SEND_VAL                                                 'w'
         88        DO_ICALL                                         $38     
         89        ASSIGN                                                   !3, $38
   29    90        INIT_FCALL                                               'fwrite'
         91        SEND_VAR                                                 !3
         92        SEND_VAL                                                 's'
         93        DO_ICALL                                                 
   30    94        INIT_FCALL                                               'fclose'
         95        SEND_VAR                                                 !3
         96        DO_ICALL                                                 
   31    97      > JMP                                                      ->203
   35    98    >   INIT_FCALL                                               'fopen'
         99        SEND_VAR                                                 !1
        100        SEND_VAL                                                 'w'
        101        DO_ICALL                                         $42     
        102        ASSIGN                                                   !3, $42
   36   103        INIT_FCALL                                               'fwrite'
        104        SEND_VAR                                                 !3
        105        SEND_VAL                                                 't'
        106        DO_ICALL                                                 
   37   107        INIT_FCALL                                               'fclose'
        108        SEND_VAR                                                 !3
        109        DO_ICALL                                                 
   38   110      > JMP                                                      ->203
   40   111    >   INIT_FCALL                                               'fopen'
        112        SEND_VAR                                                 !1
        113        SEND_VAL                                                 'w'
        114        DO_ICALL                                         $46     
        115        ASSIGN                                                   !3, $46
   41   116        INIT_FCALL                                               'fwrite'
        117        SEND_VAR                                                 !3
        118        SEND_VAL                                                 'g'
        119        DO_ICALL                                                 
   42   120        INIT_FCALL                                               'fclose'
        121        SEND_VAR                                                 !3
        122        DO_ICALL                                                 
   43   123      > JMP                                                      ->203
   45   124    >   INIT_FCALL                                               'fopen'
        125        SEND_VAR                                                 !1
        126        SEND_VAL                                                 'w'
        127        DO_ICALL                                         $50     
        128        ASSIGN                                                   !3, $50
   46   129        INIT_FCALL                                               'fwrite'
        130        SEND_VAR                                                 !3
        131        SEND_VAL                                                 'h'
        132        DO_ICALL                                                 
   47   133        INIT_FCALL                                               'fclose'
        134        SEND_VAR                                                 !3
        135        DO_ICALL                                                 
   48   136      > JMP                                                      ->203
   50   137    >   INIT_FCALL                                               'fopen'
        138        SEND_VAR                                                 !1
        139        SEND_VAL                                                 'w'
        140        DO_ICALL                                         $54     
        141        ASSIGN                                                   !3, $54
   51   142        INIT_FCALL                                               'fwrite'
        143        SEND_VAR                                                 !3
        144        SEND_VAL                                                 'f'
        145        DO_ICALL                                                 
   52   146        INIT_FCALL                                               'fclose'
        147        SEND_VAR                                                 !3
        148        DO_ICALL                                                 
   53   149      > JMP                                                      ->203
   56   150    >   INIT_FCALL                                               'fopen'
        151        SEND_VAR                                                 !1
        152        SEND_VAL                                                 'w'
        153        DO_ICALL                                         $58     
        154        ASSIGN                                                   !3, $58
   57   155        INIT_FCALL                                               'fwrite'
        156        SEND_VAR                                                 !3
        157        SEND_VAL                                                 'u'
        158        DO_ICALL                                                 
   58   159        INIT_FCALL                                               'fclose'
        160        SEND_VAR                                                 !3
        161        DO_ICALL                                                 
   59   162      > JMP                                                      ->203
   61   163    >   INIT_FCALL                                               'fopen'
        164        SEND_VAR                                                 !1
        165        SEND_VAL                                                 'w'
        166        DO_ICALL                                         $62     
        167        ASSIGN                                                   !3, $62
   62   168        INIT_FCALL                                               'fwrite'
        169        SEND_VAR                                                 !3
        170        SEND_VAL                                                 'j'
        171        DO_ICALL                                                 
   63   172        INIT_FCALL                                               'fclose'
        173        SEND_VAR                                                 !3
        174        DO_ICALL                                                 
   64   175      > JMP                                                      ->203
   66   176    >   INIT_FCALL                                               'fopen'
        177        SEND_VAR                                                 !1
        178        SEND_VAL                                                 'w'
        179        DO_ICALL                                         $66     
        180        ASSIGN                                                   !3, $66
   67   181        INIT_FCALL                                               'fwrite'
        182        SEND_VAR                                                 !3
        183        SEND_VAL                                                 'n'
        184        DO_ICALL                                                 
   68   185        INIT_FCALL                                               'fclose'
        186        SEND_VAR                                                 !3
        187        DO_ICALL                                                 
   69   188      > JMP                                                      ->203
   71   189    >   INIT_FCALL                                               'fopen'
        190        SEND_VAR                                                 !1
        191        SEND_VAL                                                 'w'
        192        DO_ICALL                                         $70     
        193        ASSIGN                                                   !3, $70
   72   194        INIT_FCALL                                               'fwrite'
        195        SEND_VAR                                                 !3
        196        SEND_VAL                                                 'm'
        197        DO_ICALL                                                 
   73   198        INIT_FCALL                                               'fclose'
        199        SEND_VAR                                                 !3
        200        DO_ICALL                                                 
   74   201      > JMP                                                      ->203
   76   202    > > EXIT                                                     'Something+is+wrong.++Fix+it.'
   81   203    >   ECHO                                                     '%0A%0A%0A%0A%0A%3Chtml%3E%0A%09%3Cbody%3E%0A%09%09%3Ccenter%3E%3Ch1%3EControl+Mivinci%21%3C%2Fh1%3E%3Cb%3EVersion+'
   88   204        ECHO                                                     !0
        205        ECHO                                                     '%3C%2Fb%3E%3C%2Fcenter%3E%0A%09%09%3Cbody+style%3D%22background-color%3Ayellow%3B%22%3E%0A%0A%09%09%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%0A%09%09%0A%09%09%3Cdiv+style%3D%22float%3A+left%3B+width%3A+700px%3B+height%3A+500px%3B%22%3E%0A++++++++%09%09%3Ciframe+frameborder%3D%220%22+width%3D%22700%22+height%3D%22500%22+src%3D%22http%3A%2F%2F192.168.23.111%3A8081%2F%22%3E%3C%2Fiframe%3E%0A++++%09%09%3C%2Fdiv%3E%0A%09%09%3Cdiv+id%3D%22controls%22+style%3D%22float%3Aleft%3B%22%3E%0A%09%09%09%3Cform+method%3D%22post%22+action%3D%22'
   97   206        ECHO                                                     !4
        207        ECHO                                                     '%22%3E%0A%3Cbr+%2F%3E%0A%3Cbr+%2F%3E%0A%3Cbr+%2F%3E%0A%3Cbr+%2F%3E%0A%0A%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%0A%3Cinput+type%3D%22submit%22+value%3D%22W%22+name%3D%22rcmd%22%3E%0A%3Cbr%2F%3E%0A%3Cbr+%2F%3E%0A%0A%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%0A%3Cinput+type%3D%22submit%22+value%3D%22A%22+name%3D%22rcmd%22%3E%0A%0A%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%0A%3Cinput+type%3D%22submit%22+value%3D%22D%22+name%3D%22rcmd%22%3E%0A%3Cbr%2F%3E%0A%3Cbr+%2F%3E%0A%0A%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%0A%3Cinput+type%3D%22submit%22+value%3D%22S%22+name%3D%22rcmd%22%3E%0A%3Cbr%2F%3E%0A%3Cbr+%2F%3E%0A%3Cbr+%2F%3E%0A%0A%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%0A%3Cinput+type%3D%22submit%22+value%3D%22T%22+name%3D%22rcmd%22%3E%0A%3Cbr%2F%3E%0A%3Cbr+%2F%3E%0A%0A%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%0A%3Cinput+type%3D%22submit%22+value%3D%22F%22+name%3D%22rcmd%22%3E%0A%0A%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%0A%3Cinput+type%3D%22submit%22+value%3D%22H%22+name%3D%22rcmd%22%3E%3Cbr%2F%3E%0A%3Cbr+%2F%3E%0A%0A%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%0A%3Cinput+type%3D%22submit%22+value%3D%22G%22+name%3D%22rcmd%22%3E%0A%3Cbr+%2F%3E%0A%3Cbr+%2F%3E%0A%0A%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%0A%3Cinput+type%3D%22submit%22+value%3D%22U%22+name%3D%22rcmd%22%3E%0A%3Cbr%2F%3E%0A%3Cbr+%2F%3E%0A%3Cbr+%2F%3E%0A%0A%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%26nbsp%0A%3Cinput+type%3D%22submit%22+value%3D%22V%22+name%3D%22rcmd%22%3E%3Cbr%2F%3E%0A%0A%3Cbr+%2F%3E%0A%3Cbr+%2F%3E%0A%0A%26nbsp%26nbsp%26nbsp%26nbsp%0A%3Cinput+type%3D%22submit%22+value%3D%22Home%22+name%3D%22rcmd%22%3E%0A%26nbsp%0A%3Cinput+type%3D%22submit%22+value%3D%22Lights%22+name%3D%22rcmd%22%3E%0A%0A%0A%3C%2Fform%3E%0A%0A%3C%2Fdiv%3E%0A%3C%2Fdiv%3E%0A%3Cdiv+class%3D%22clear%3A+both%3B%22%3E%26nbsp%3B%3C%2Fdiv%3E%0A%0A%3Cbr+%2F%3E%0A%3Cbr+%2F%3E%0A%3Cbr+%2F%3E%0A%0A%0A%0A%3C%2Fbody%3E%0A%3C%2Fhtml%3E'
  170   208      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
151.69 ms | 1408 KiB | 19 Q