3v4l.org

run code in 300+ PHP versions simultaneously
<?php // On initialise les variables function global_var($var) { global $HTTP_POST_VARS, $HTTP_GET_VARS; if (!empty($HTTP_POST_VARS[$var])) { return $HTTP_POST_VARS[$var]; }elseif (!empty($HTTP_GET_VARS[$var])) { return $HTTP_GET_VARS[$var]; }else{ return ''; } } $key ="2141252136337571"; // pour Plaque-funeraire.fr $params = array(); $params['vads_site_id'] = "63837004"; $params['vads_amount'] = $montant; $params['vads_currency'] = "978"; $params['vads_ctx_mode'] = "PRODUCTION"; $params['vads_page_action'] = "PAYMENT"; $params['vads_action_mode'] = "INTERACTIVE"; $params['vads_payment_config'] = "SINGLE"; $params['vads_version'] = "V2"; $params['vads_url_success'] = "http://www.Plaque-funeraire.fr/succespaiement.php"; $params['vads_url_return'] = "http://www.Plaque-funeraire.fr"; $params['vads_url_cancel'] = "http://www.Plaque-funeraire.fr/echecpaiement.php"; $params['vads_validation_mode'] = 0; $params['vads_shop_url'] = "http://www.Plaque-funeraire.fr"; $params['vads_shop_name'] = "Plaque-funeraire.fr - RENAUD Gravure"; $params['vads_cust_name'] = $nom; $params['vads_cust_email'] = $email; $params['vads_cust_address'] = $adresse1; $params['vads_cust_city'] = $ville; $params['vads_cust_zip'] = $codepostal; $params['vads_cust_state'] = $pays; $params['vads_cust_cell_phone'] = utf8_encode($tel1); $params['vads_order_id'] = utf8_encode($referenceproduit); if ($language){$params['vads_language'] = $language;} //$params['vads_order_info'] = $info; $ts = time(); $params['vads_trans_date'] = gmdate("YmdHis",$ts); $filename = "count.txt"; $fp = fopen($filename, 'r+'); flock($fp, LOCK_EX); $count = (int)fread($fp,6); $count++; if($count<0 || $count > 899999) {$count=0;} fseek($fp,0); ftruncate($fp,0); fwrite($fp,$count); flock($fp, LOCK_UN); fclose($fp); $trans_id = sprintf("%06d",$count); $params['vads_trans_id'] = $trans_id; ksort($params); $contenu_signature = ""; foreach ($params as $nom => $valeur) {$contenu_signature .= $valeur."+";} $contenu_signature .= $key; $params['signature'] = sha1($contenu_signature); ?> <form name="postsystempay" method="POST" action="https://paiement.systempay.fr/vads-payment/"> <br /><br /><br /> Chargement du terminal de paiement s&eacute;curis&eacute; : CyberPlus Banque Populaire.<br /> Merci de patienter quelques instants.<br /><br /> Chargement en cours ... <?php foreach($params as $nom => $valeur) { echo '<input type="hidden" name="'.$nom.'" value="'.$valeur.'"/>'; } ?> </form> <script> window.document.postsystempay.submit(); </script> </html>
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 53, Position 2 = 55
Branch analysis from position: 53
2 jumps found. (Code = 47) Position 1 = 83, Position 2 = 85
Branch analysis from position: 83
2 jumps found. (Code = 43) Position 1 = 86, Position 2 = 87
Branch analysis from position: 86
2 jumps found. (Code = 77) Position 1 = 118, Position 2 = 123
Branch analysis from position: 118
2 jumps found. (Code = 78) Position 1 = 119, Position 2 = 123
Branch analysis from position: 119
1 jumps found. (Code = 42) Position 1 = 118
Branch analysis from position: 118
Branch analysis from position: 123
2 jumps found. (Code = 77) Position 1 = 132, Position 2 = 140
Branch analysis from position: 132
2 jumps found. (Code = 78) Position 1 = 133, Position 2 = 140
Branch analysis from position: 133
1 jumps found. (Code = 42) Position 1 = 132
Branch analysis from position: 132
Branch analysis from position: 140
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 140
Branch analysis from position: 123
Branch analysis from position: 87
Branch analysis from position: 85
Branch analysis from position: 55
filename:       /in/gepl6
function name:  (null)
number of ops:  143
compiled vars:  !0 = $key, !1 = $params, !2 = $montant, !3 = $nom, !4 = $email, !5 = $adresse1, !6 = $ville, !7 = $codepostal, !8 = $pays, !9 = $tel1, !10 = $referenceproduit, !11 = $language, !12 = $ts, !13 = $filename, !14 = $fp, !15 = $count, !16 = $trans_id, !17 = $contenu_signature, !18 = $valeur
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   16     0  E >   ASSIGN                                                   !0, '2141252136337571'
   17     1        ASSIGN                                                   !1, <array>
   18     2        ASSIGN_DIM                                               !1, 'vads_site_id'
          3        OP_DATA                                                  '63837004'
   19     4        ASSIGN_DIM                                               !1, 'vads_amount'
          5        OP_DATA                                                  !2
   20     6        ASSIGN_DIM                                               !1, 'vads_currency'
          7        OP_DATA                                                  '978'
   21     8        ASSIGN_DIM                                               !1, 'vads_ctx_mode'
          9        OP_DATA                                                  'PRODUCTION'
   22    10        ASSIGN_DIM                                               !1, 'vads_page_action'
         11        OP_DATA                                                  'PAYMENT'
   23    12        ASSIGN_DIM                                               !1, 'vads_action_mode'
         13        OP_DATA                                                  'INTERACTIVE'
   24    14        ASSIGN_DIM                                               !1, 'vads_payment_config'
         15        OP_DATA                                                  'SINGLE'
   25    16        ASSIGN_DIM                                               !1, 'vads_version'
         17        OP_DATA                                                  'V2'
   26    18        ASSIGN_DIM                                               !1, 'vads_url_success'
         19        OP_DATA                                                  'http%3A%2F%2Fwww.Plaque-funeraire.fr%2Fsuccespaiement.php'
   27    20        ASSIGN_DIM                                               !1, 'vads_url_return'
         21        OP_DATA                                                  'http%3A%2F%2Fwww.Plaque-funeraire.fr'
   28    22        ASSIGN_DIM                                               !1, 'vads_url_cancel'
         23        OP_DATA                                                  'http%3A%2F%2Fwww.Plaque-funeraire.fr%2Fechecpaiement.php'
   29    24        ASSIGN_DIM                                               !1, 'vads_validation_mode'
         25        OP_DATA                                                  0
   30    26        ASSIGN_DIM                                               !1, 'vads_shop_url'
         27        OP_DATA                                                  'http%3A%2F%2Fwww.Plaque-funeraire.fr'
   31    28        ASSIGN_DIM                                               !1, 'vads_shop_name'
         29        OP_DATA                                                  'Plaque-funeraire.fr+-+RENAUD+Gravure'
   32    30        ASSIGN_DIM                                               !1, 'vads_cust_name'
         31        OP_DATA                                                  !3
   33    32        ASSIGN_DIM                                               !1, 'vads_cust_email'
         33        OP_DATA                                                  !4
   34    34        ASSIGN_DIM                                               !1, 'vads_cust_address'
         35        OP_DATA                                                  !5
   35    36        ASSIGN_DIM                                               !1, 'vads_cust_city'
         37        OP_DATA                                                  !6
   36    38        ASSIGN_DIM                                               !1, 'vads_cust_zip'
         39        OP_DATA                                                  !7
   37    40        ASSIGN_DIM                                               !1, 'vads_cust_state'
         41        OP_DATA                                                  !8
   38    42        INIT_FCALL                                               'utf8_encode'
         43        SEND_VAR                                                 !9
         44        DO_ICALL                                         $42     
         45        ASSIGN_DIM                                               !1, 'vads_cust_cell_phone'
         46        OP_DATA                                                  $42
   39    47        INIT_FCALL                                               'utf8_encode'
         48        SEND_VAR                                                 !10
         49        DO_ICALL                                         $44     
         50        ASSIGN_DIM                                               !1, 'vads_order_id'
         51        OP_DATA                                                  $44
   40    52      > JMPZ                                                     !11, ->55
         53    >   ASSIGN_DIM                                               !1, 'vads_language'
         54        OP_DATA                                                  !11
   42    55    >   INIT_FCALL                                               'time'
         56        DO_ICALL                                         $46     
         57        ASSIGN                                                   !12, $46
   43    58        INIT_FCALL                                               'gmdate'
         59        SEND_VAL                                                 'YmdHis'
         60        SEND_VAR                                                 !12
         61        DO_ICALL                                         $49     
         62        ASSIGN_DIM                                               !1, 'vads_trans_date'
         63        OP_DATA                                                  $49
   45    64        ASSIGN                                                   !13, 'count.txt'
   46    65        INIT_FCALL                                               'fopen'
         66        SEND_VAR                                                 !13
         67        SEND_VAL                                                 'r%2B'
         68        DO_ICALL                                         $51     
         69        ASSIGN                                                   !14, $51
   47    70        INIT_FCALL                                               'flock'
         71        SEND_VAR                                                 !14
         72        SEND_VAL                                                 2
         73        DO_ICALL                                                 
   48    74        INIT_FCALL                                               'fread'
         75        SEND_VAR                                                 !14
         76        SEND_VAL                                                 6
         77        DO_ICALL                                         $54     
         78        CAST                                          4  ~55     $54
         79        ASSIGN                                                   !15, ~55
   49    80        PRE_INC                                                  !15
   50    81        IS_SMALLER                                       ~58     !15, 0
         82      > JMPNZ_EX                                         ~58     ~58, ->85
         83    >   IS_SMALLER                                       ~59     899999, !15
         84        BOOL                                             ~58     ~59
         85    > > JMPZ                                                     ~58, ->87
         86    >   ASSIGN                                                   !15, 0
   51    87    >   INIT_FCALL                                               'fseek'
         88        SEND_VAR                                                 !14
         89        SEND_VAL                                                 0
         90        DO_ICALL                                                 
   52    91        INIT_FCALL                                               'ftruncate'
         92        SEND_VAR                                                 !14
         93        SEND_VAL                                                 0
         94        DO_ICALL                                                 
   53    95        INIT_FCALL                                               'fwrite'
         96        SEND_VAR                                                 !14
         97        SEND_VAR                                                 !15
         98        DO_ICALL                                                 
   54    99        INIT_FCALL                                               'flock'
        100        SEND_VAR                                                 !14
        101        SEND_VAL                                                 3
        102        DO_ICALL                                                 
   55   103        INIT_FCALL                                               'fclose'
        104        SEND_VAR                                                 !14
        105        DO_ICALL                                                 
   56   106        INIT_FCALL                                               'sprintf'
        107        SEND_VAL                                                 '%2506d'
        108        SEND_VAR                                                 !15
        109        DO_ICALL                                         $66     
        110        ASSIGN                                                   !16, $66
   58   111        ASSIGN_DIM                                               !1, 'vads_trans_id'
        112        OP_DATA                                                  !16
   60   113        INIT_FCALL                                               'ksort'
        114        SEND_REF                                                 !1
        115        DO_ICALL                                                 
   61   116        ASSIGN                                                   !17, ''
   62   117      > FE_RESET_R                                       $71     !1, ->123
        118    > > FE_FETCH_R                                       ~72     $71, !18, ->123
        119    >   ASSIGN                                                   !3, ~72
   63   120        CONCAT                                           ~74     !18, '%2B'
        121        ASSIGN_OP                                     8          !17, ~74
   62   122      > JMP                                                      ->118
        123    >   FE_FREE                                                  $71
   64   124        ASSIGN_OP                                     8          !17, !0
   65   125        INIT_FCALL                                               'sha1'
        126        SEND_VAR                                                 !17
        127        DO_ICALL                                         $78     
        128        ASSIGN_DIM                                               !1, 'signature'
        129        OP_DATA                                                  $78
   67   130        ECHO                                                     '%3Cform+name%3D%22postsystempay%22+method%3D%22POST%22+action%3D%22https%3A%2F%2Fpaiement.systempay.fr%2Fvads-payment%2F%22%3E%0A%3Cbr+%2F%3E%3Cbr+%2F%3E%3Cbr+%2F%3E%0AChargement+du+terminal+de+paiement+s%26eacute%3Bcuris%26eacute%3B+%3A+CyberPlus+Banque+Populaire.%3Cbr+%2F%3E%0AMerci+de+patienter+quelques+instants.%3Cbr+%2F%3E%3Cbr+%2F%3E%0AChargement+en+cours+...%0A'
   73   131      > FE_RESET_R                                       $79     !1, ->140
        132    > > FE_FETCH_R                                       ~80     $79, !18, ->140
        133    >   ASSIGN                                                   !3, ~80
   75   134        CONCAT                                           ~82     '%3Cinput+type%3D%22hidden%22+name%3D%22', !3
        135        CONCAT                                           ~83     ~82, '%22+value%3D%22'
        136        CONCAT                                           ~84     ~83, !18
        137        CONCAT                                           ~85     ~84, '%22%2F%3E'
        138        ECHO                                                     ~85
   73   139      > JMP                                                      ->132
        140    >   FE_FREE                                                  $79
   78   141        ECHO                                                     '%3C%2Fform%3E%0A%3Cscript%3E%0Awindow.document.postsystempay.submit%28%29%3B%0A%3C%2Fscript%3E%0A%3C%2Fhtml%3E'
   82   142      > RETURN                                                   1

Function global_var:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 6, Position 2 = 9
Branch analysis from position: 6
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 9
2 jumps found. (Code = 43) Position 1 = 12, Position 2 = 15
Branch analysis from position: 12
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 15
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/gepl6
function name:  global_var
number of ops:  17
compiled vars:  !0 = $var, !1 = $HTTP_POST_VARS, !2 = $HTTP_GET_VARS
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   RECV                                             !0      
    4     1        BIND_GLOBAL                                              !1, 'HTTP_POST_VARS'
          2        BIND_GLOBAL                                              !2, 'HTTP_GET_VARS'
    5     3        ISSET_ISEMPTY_DIM_OBJ                         1  ~3      !1, !0
          4        BOOL_NOT                                         ~4      ~3
          5      > JMPZ                                                     ~4, ->9
    6     6    >   FETCH_DIM_R                                      ~5      !1, !0
          7      > RETURN                                                   ~5
          8*       JMP                                                      ->16
    7     9    >   ISSET_ISEMPTY_DIM_OBJ                         1  ~6      !2, !0
         10        BOOL_NOT                                         ~7      ~6
         11      > JMPZ                                                     ~7, ->15
    9    12    >   FETCH_DIM_R                                      ~8      !2, !0
         13      > RETURN                                                   ~8
         14*       JMP                                                      ->16
   11    15    > > RETURN                                                   ''
   13    16*     > RETURN                                                   null

End of function global_var

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
176.12 ms | 1412 KiB | 39 Q