3v4l.org

run code in 500+ PHP versions simultaneously
<?php /** * Created by PhpStorm. * User: efik * Date: 20.09.16 * Time: 13:40 */ ///////////////////////// TEST ////////////////// $_POST = [ 'napoj' => 'herbata', 'name' => 'Krzysi', 'second_name' => 'dd' ]; $_SERVER["REQUEST_METHOD"] = 'POST'; /////////////////////// KONIEC DANYCH TESTOWYCH ///////// if($_SERVER["REQUEST_METHOD"] !== "POST") { exit; } if(!(['faktura', 'napoj', 'name', 'second_name'] === array_keys($_POST))){ echo "Wszystkie pola muszą być wypełnione! <br>"; exit; } $faktura = $_POST['faktura'] == 'on' ? 'Tak' : 'Nie'; $napoj = $_POST['napoj']; $name = $_POST['name']; $secondName = $_POST['second_name']; $orderDate = (new DateTime())->format("H:i, Y-m-d"); echo "Imie: {$name} <br>"; echo "Nazwisko: {$secondName} <br>"; echo "Faktura: {$faktura}<br>"; echo "Zamówienie: "; switch($napoj) { case 'herbata': echo "herabata"; break; case 'kawa': echo "herabata"; break; case 'pepsi': echo "herabata"; break; case 'woda mineralna': echo "woda mineralna"; break; } echo "<br>"; echo "Zamówienie złożone: {$orderDate} ";
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 9, Position 2 = 11
Branch analysis from position: 9
1 jumps found. (Code = 61) Position 1 = -2
Branch analysis from position: 11
2 jumps found. (Code = 43) Position 1 = 18, Position 2 = 21
Branch analysis from position: 18
1 jumps found. (Code = 61) Position 1 = -2
Branch analysis from position: 21
2 jumps found. (Code = 43) Position 1 = 25, Position 2 = 27
Branch analysis from position: 25
1 jumps found. (Code = 42) Position 1 = 28
Branch analysis from position: 28
6 jumps found. (Code = 188) Position 1 = 67, Position 2 = 69, Position 3 = 71, Position 4 = 73, Position 5 = 75, Position 6 = 58
Branch analysis from position: 67
1 jumps found. (Code = 42) Position 1 = 75
Branch analysis from position: 75
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 69
1 jumps found. (Code = 42) Position 1 = 75
Branch analysis from position: 75
Branch analysis from position: 71
1 jumps found. (Code = 42) Position 1 = 75
Branch analysis from position: 75
Branch analysis from position: 73
1 jumps found. (Code = 42) Position 1 = 75
Branch analysis from position: 75
Branch analysis from position: 75
Branch analysis from position: 58
2 jumps found. (Code = 44) Position 1 = 60, Position 2 = 67
Branch analysis from position: 60
2 jumps found. (Code = 44) Position 1 = 62, Position 2 = 69
Branch analysis from position: 62
2 jumps found. (Code = 44) Position 1 = 64, Position 2 = 71
Branch analysis from position: 64
2 jumps found. (Code = 44) Position 1 = 66, Position 2 = 73
Branch analysis from position: 66
1 jumps found. (Code = 42) Position 1 = 75
Branch analysis from position: 75
Branch analysis from position: 73
Branch analysis from position: 71
Branch analysis from position: 69
Branch analysis from position: 67
Branch analysis from position: 27
6 jumps found. (Code = 188) Position 1 = 67, Position 2 = 69, Position 3 = 71, Position 4 = 73, Position 5 = 75, Position 6 = 58
Branch analysis from position: 67
Branch analysis from position: 69
Branch analysis from position: 71
Branch analysis from position: 73
Branch analysis from position: 75
Branch analysis from position: 58
filename:       /in/X0r65
function name:  (null)
number of ops:  81
compiled vars:  !0 = $faktura, !1 = $napoj, !2 = $name, !3 = $secondName, !4 = $orderDate
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
   11     0  E >   FETCH_W                          global              $5      '_POST'
          1        ASSIGN                                                       $5, <array>
   17     2        FETCH_W                          global              $7      '_SERVER'
          3        ASSIGN_DIM                                                   $7, 'REQUEST_METHOD'
          4        OP_DATA                                                      'POST'
   24     5        FETCH_R                          global              ~9      '_SERVER'
          6        FETCH_DIM_R                                          ~10     ~9, 'REQUEST_METHOD'
          7        IS_NOT_IDENTICAL                                             ~10, 'POST'
          8      > JMPZ                                                         ~11, ->11
   25     9    > > INIT_FCALL                                                   'exit'
         10*       DO_ICALL                                                     
   28    11    >   INIT_FCALL                                                   'array_keys'
         12        FETCH_R                          global              ~13     '_POST'
         13        SEND_VAL                                                     ~13
         14        DO_ICALL                                             $14     
         15        IS_IDENTICAL                                         ~15     $14, <array>
         16        BOOL_NOT                                             ~16     ~15
         17      > JMPZ                                                         ~16, ->21
   29    18    >   ECHO                                                         'Wszystkie+pola+musz%C4%85+by%C4%87+wype%C5%82nione%21+%3Cbr%3E'
   30    19      > INIT_FCALL                                                   'exit'
         20*       DO_ICALL                                                     
   33    21    >   FETCH_R                          global              ~18     '_POST'
         22        FETCH_DIM_R                                          ~19     ~18, 'faktura'
         23        IS_EQUAL                                                     ~19, 'on'
         24      > JMPZ                                                         ~20, ->27
         25    >   QM_ASSIGN                                            ~21     'Tak'
         26      > JMP                                                          ->28
         27    >   QM_ASSIGN                                            ~21     'Nie'
         28    >   ASSIGN                                                       !0, ~21
   34    29        FETCH_R                          global              ~23     '_POST'
         30        FETCH_DIM_R                                          ~24     ~23, 'napoj'
         31        ASSIGN                                                       !1, ~24
   35    32        FETCH_R                          global              ~26     '_POST'
         33        FETCH_DIM_R                                          ~27     ~26, 'name'
         34        ASSIGN                                                       !2, ~27
   36    35        FETCH_R                          global              ~29     '_POST'
         36        FETCH_DIM_R                                          ~30     ~29, 'second_name'
         37        ASSIGN                                                       !3, ~30
   37    38        NEW                                                  $32     'DateTime'
         39        DO_FCALL                                          0          
         40        INIT_METHOD_CALL                                             $32, 'format'
         41        SEND_VAL_EX                                                  'H%3Ai%2C+Y-m-d'
         42        DO_FCALL                                          0  $34     
         43        ASSIGN                                                       !4, $34
   39    44        ROPE_INIT                                         3  ~37     'Imie%3A+'
         45        ROPE_ADD                                          1  ~37     ~37, !2
         46        ROPE_END                                          2  ~36     ~37, '+%3Cbr%3E'
         47        ECHO                                                         ~36
   40    48        ROPE_INIT                                         3  ~40     'Nazwisko%3A+'
         49        ROPE_ADD                                          1  ~40     ~40, !3
         50        ROPE_END                                          2  ~39     ~40, '+%3Cbr%3E'
         51        ECHO                                                         ~39
   41    52        ROPE_INIT                                         3  ~43     'Faktura%3A+'
         53        ROPE_ADD                                          1  ~43     ~43, !0
         54        ROPE_END                                          2  ~42     ~43, '%3Cbr%3E'
         55        ECHO                                                         ~42
   42    56        ECHO                                                         'Zam%C3%B3wienie%3A+'
   43    57      > SWITCH_STRING                                                !1, [ 'herbata':->67, 'kawa':->69, 'pepsi':->71, 'woda+mineralna':->73, ], ->75
   45    58    >   IS_EQUAL                                                     !1, 'herbata'
         59      > JMPNZ                                                        ~45, ->67
   46    60    >   IS_EQUAL                                                     !1, 'kawa'
         61      > JMPNZ                                                        ~45, ->69
   47    62    >   IS_EQUAL                                                     !1, 'pepsi'
         63      > JMPNZ                                                        ~45, ->71
   48    64    >   IS_EQUAL                                                     !1, 'woda+mineralna'
         65      > JMPNZ                                                        ~45, ->73
         66    > > JMP                                                          ->75
   45    67    >   ECHO                                                         'herabata'
         68      > JMP                                                          ->75
   46    69    >   ECHO                                                         'herabata'
         70      > JMP                                                          ->75
   47    71    >   ECHO                                                         'herabata'
         72      > JMP                                                          ->75
   48    73    >   ECHO                                                         'woda+mineralna'
         74      > JMP                                                          ->75
   50    75    >   ECHO                                                         '%3Cbr%3E'
   51    76        ROPE_INIT                                         3  ~47     'Zam%C3%B3wienie+z%C5%82o%C5%BCone%3A+'
         77        ROPE_ADD                                          1  ~47     ~47, !4
         78        ROPE_END                                          2  ~46     ~47, '+'
         79        ECHO                                                         ~46
         80      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
174.44 ms | 2486 KiB | 15 Q