3v4l.org

run code in 300+ PHP versions simultaneously
<?php // Paramètres $uri = '/api/channel/2015-12-06/1403.xml'; $applicationId = 'TDF'; $password = 'L2a4mZK5'; $secretKey = '7743310e629f0419398fbf910e34d1011005'; // Préparation des paramètres d'appel // gmdate() : Retourne une date sous forme d'une chaîne, selon un format donné. Le temps retourné est GMT. // time() : Retourne l'heure courante mesurée en secondes, depuis le début de l'époque UNIX $date = gmdate("D, d M Y H:i:s", time()).' GMT'; $string2sign = 'GET ' . $uri . ' ' . $secretKey; // base64_encode() : Encore la chaîne donnée en paramètre en base64. // hash_hmac() : Génère une valeur de clé de hachage en utilisant la méthode HMAC. // utf8_encode() : Encode la chaîne donnée en paramètre en utf8. $signature = base64_encode( hash_hmac( 'sha1', utf8_encode( $string2sign ), $password ) ); $Authorization = 'PLWS ' . $applicationId . ':' . $signature; $curlUrl = 'http://api-tv.plurimedia.fr' . $uri; // Préparation des headers $headers = array(); $headers[] = 'Accept: application/json'; $headers[] = 'Pluri-Key: ' . $Authorization; $headers[] = 'Content-Type: application/json'; $headers[] = 'Date: ' . $date; // Appel cURL // curl_init() : Permet de récupérer le contenu d'une page Web $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_URL, $curlUrl); curl_setopt($ch, CURLINFO_HEADER_OUT, true); curl_setopt($ch, CURLOPT_VERBOSE, 1); curl_setopt($ch, CURLOPT_HEADER, 1); $response = curl_exec ($ch); $info = curl_getinfo($ch); $header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE); $header = substr($response, 0, $header_size); $body = substr($response, $header_size); curl_close ($ch); // Votre XML se trouve dans la variable $body. header('Content-Type:text/xml'); echo $body; ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/h59Hj
function name:  (null)
number of ops:  117
compiled vars:  !0 = $uri, !1 = $applicationId, !2 = $password, !3 = $secretKey, !4 = $date, !5 = $string2sign, !6 = $signature, !7 = $Authorization, !8 = $curlUrl, !9 = $headers, !10 = $ch, !11 = $response, !12 = $info, !13 = $header_size, !14 = $header, !15 = $body
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    4     0  E >   ASSIGN                                                   !0, '%2Fapi%2Fchannel%2F2015-12-06%2F1403.xml'
    5     1        ASSIGN                                                   !1, 'TDF'
    6     2        ASSIGN                                                   !2, 'L2a4mZK5'
    7     3        ASSIGN                                                   !3, '7743310e629f0419398fbf910e34d1011005'
   14     4        INIT_FCALL                                               'gmdate'
          5        SEND_VAL                                                 'D%2C+d+M+Y+H%3Ai%3As'
          6        INIT_FCALL                                               'time'
          7        DO_ICALL                                         $20     
          8        SEND_VAR                                                 $20
          9        DO_ICALL                                         $21     
         10        CONCAT                                           ~22     $21, '+GMT'
         11        ASSIGN                                                   !4, ~22
   15    12        CONCAT                                           ~24     'GET+', !0
         13        CONCAT                                           ~25     ~24, '+'
         14        CONCAT                                           ~26     ~25, !3
         15        ASSIGN                                                   !5, ~26
   19    16        INIT_FCALL                                               'base64_encode'
         17        INIT_FCALL                                               'hash_hmac'
         18        SEND_VAL                                                 'sha1'
         19        INIT_FCALL                                               'utf8_encode'
         20        SEND_VAR                                                 !5
         21        DO_ICALL                                         $28     
         22        SEND_VAR                                                 $28
         23        SEND_VAR                                                 !2
         24        DO_ICALL                                         $29     
         25        SEND_VAR                                                 $29
         26        DO_ICALL                                         $30     
         27        ASSIGN                                                   !6, $30
   20    28        CONCAT                                           ~32     'PLWS+', !1
         29        CONCAT                                           ~33     ~32, '%3A'
         30        CONCAT                                           ~34     ~33, !6
         31        ASSIGN                                                   !7, ~34
   21    32        CONCAT                                           ~36     'http%3A%2F%2Fapi-tv.plurimedia.fr', !0
         33        ASSIGN                                                   !8, ~36
   26    34        ASSIGN                                                   !9, <array>
   27    35        ASSIGN_DIM                                               !9
         36        OP_DATA                                                  'Accept%3A+application%2Fjson'
   28    37        CONCAT                                           ~41     'Pluri-Key%3A+', !7
         38        ASSIGN_DIM                                               !9
         39        OP_DATA                                                  ~41
   29    40        ASSIGN_DIM                                               !9
         41        OP_DATA                                                  'Content-Type%3A+application%2Fjson'
   30    42        CONCAT                                           ~44     'Date%3A+', !4
         43        ASSIGN_DIM                                               !9
         44        OP_DATA                                                  ~44
   36    45        INIT_FCALL_BY_NAME                                       'curl_init'
         46        DO_FCALL                                      0  $45     
         47        ASSIGN                                                   !10, $45
   37    48        INIT_FCALL_BY_NAME                                       'curl_setopt'
         49        SEND_VAR_EX                                              !10
         50        FETCH_CONSTANT                                   ~47     'CURLOPT_RETURNTRANSFER'
         51        SEND_VAL_EX                                              ~47
         52        SEND_VAL_EX                                              <true>
         53        DO_FCALL                                      0          
   38    54        INIT_FCALL_BY_NAME                                       'curl_setopt'
         55        SEND_VAR_EX                                              !10
         56        FETCH_CONSTANT                                   ~49     'CURLOPT_HTTPHEADER'
         57        SEND_VAL_EX                                              ~49
         58        SEND_VAR_EX                                              !9
         59        DO_FCALL                                      0          
   39    60        INIT_FCALL_BY_NAME                                       'curl_setopt'
         61        SEND_VAR_EX                                              !10
         62        FETCH_CONSTANT                                   ~51     'CURLOPT_URL'
         63        SEND_VAL_EX                                              ~51
         64        SEND_VAR_EX                                              !8
         65        DO_FCALL                                      0          
   40    66        INIT_FCALL_BY_NAME                                       'curl_setopt'
         67        SEND_VAR_EX                                              !10
         68        FETCH_CONSTANT                                   ~53     'CURLINFO_HEADER_OUT'
         69        SEND_VAL_EX                                              ~53
         70        SEND_VAL_EX                                              <true>
         71        DO_FCALL                                      0          
   41    72        INIT_FCALL_BY_NAME                                       'curl_setopt'
         73        SEND_VAR_EX                                              !10
         74        FETCH_CONSTANT                                   ~55     'CURLOPT_VERBOSE'
         75        SEND_VAL_EX                                              ~55
         76        SEND_VAL_EX                                              1
         77        DO_FCALL                                      0          
   42    78        INIT_FCALL_BY_NAME                                       'curl_setopt'
         79        SEND_VAR_EX                                              !10
         80        FETCH_CONSTANT                                   ~57     'CURLOPT_HEADER'
         81        SEND_VAL_EX                                              ~57
         82        SEND_VAL_EX                                              1
         83        DO_FCALL                                      0          
   43    84        INIT_FCALL_BY_NAME                                       'curl_exec'
         85        SEND_VAR_EX                                              !10
         86        DO_FCALL                                      0  $59     
         87        ASSIGN                                                   !11, $59
   44    88        INIT_FCALL_BY_NAME                                       'curl_getinfo'
         89        SEND_VAR_EX                                              !10
         90        DO_FCALL                                      0  $61     
         91        ASSIGN                                                   !12, $61
   45    92        INIT_FCALL_BY_NAME                                       'curl_getinfo'
         93        SEND_VAR_EX                                              !10
         94        FETCH_CONSTANT                                   ~63     'CURLINFO_HEADER_SIZE'
         95        SEND_VAL_EX                                              ~63
         96        DO_FCALL                                      0  $64     
         97        ASSIGN                                                   !13, $64
   46    98        INIT_FCALL                                               'substr'
         99        SEND_VAR                                                 !11
        100        SEND_VAL                                                 0
        101        SEND_VAR                                                 !13
        102        DO_ICALL                                         $66     
        103        ASSIGN                                                   !14, $66
   47   104        INIT_FCALL                                               'substr'
        105        SEND_VAR                                                 !11
        106        SEND_VAR                                                 !13
        107        DO_ICALL                                         $68     
        108        ASSIGN                                                   !15, $68
   48   109        INIT_FCALL_BY_NAME                                       'curl_close'
        110        SEND_VAR_EX                                              !10
        111        DO_FCALL                                      0          
   53   112        INIT_FCALL                                               'header'
        113        SEND_VAL                                                 'Content-Type%3Atext%2Fxml'
        114        DO_ICALL                                                 
   54   115        ECHO                                                     !15
   55   116      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
173.09 ms | 1404 KiB | 27 Q