3v4l.org

run code in 300+ PHP versions simultaneously
<?php $privateKey = '0ac56cf42961b3a00e3a54e8608ac56628331a1a21e28e44288b713442c05d9c'; //your private-key $publicKey = 'd7830ae49fbe30ce79aa033662057fcb8c0d57959411066208444d709c3cd87a'; //your public-key $resource = '/shipment/'; //uri of a resource //$timestamp = time(); //actual datetime in timestamp format $timestamp = '1414751747'; //only needed for the testing-server $baseUrl = 'https://testing.swissconnect.ch/api/'; $basicAuthUser = 'swissconnect'; $basicAuthPass = 't3St-M4th1lda'; $contentData = '<?xml version="1.0"?> <auftrag> <system_fk_id>9999</system_fk_id> <startdatum>2014-09-04 16:57:00</startdatum> <rechnungsbeschreibung_offiziell>4700946399 / S-GE</rechnungsbeschreibung_offiziell> <rechnungsbeschreibung_intern>Hier allenfalls Name des Bestellers</rechnungsbeschreibung_intern> <rechnungssteller>2</rechnungssteller> <bezahl_kurier_id>600</bezahl_kurier_id> <bemerkung>bitte Monteur 30 Min. vorher anrufen / Appelz le monteur 30 Min. avant svp.</bemerkung> <auftrag_absender_kontaktadressen> <item> <firma>Schindler Aufzüge AG, SP-SA</firma> <addresse>Zugerstr. 13</addresse> <postleitzahl>6030</postleitzahl> <ort>Ebikon</ort> <kontakt>J.Varga / 041 445 47 64</kontakt> </item> </auftrag_absender_kontaktadressen> <auftrag_empfaenger_kontaktadressen> <item> <firma>Schindler Aufzüge AG Genève</firma> <addresse>chemin de la mairie 24</addresse> <postleitzahl>1258</postleitzahl> <ort>Perly</ort> <kontakt>N.Marcarini</kontakt> </item> </auftrag_empfaenger_kontaktadressen> <auftrag_dritte_kontaktadressen> <item> <kontaktadresse_id>62300</kontaktadresse_id> <bezahlt_bool>true</bezahlt_bool> </item> </auftrag_dritte_kontaktadressen> <colis> <item> <anzahl>1</anzahl> <gewicht>2.0</gewicht> <laenge>30.0</laenge> <breite>40.0</breite> <hoehe>40.0</hoehe> <beschreibung>Paket</beschreibung> <referenz>1</referenz> </item> <item> <anzahl>1</anzahl> <gewicht>4.0</gewicht> <laenge>10.0</laenge> <breite>20.0</breite> <hoehe>20.0</hoehe> <beschreibung>Paket</beschreibung> </item> <item> <anzahl>1</anzahl> <gewicht>3.3</gewicht> <laenge>215.0</laenge> <breite>11.0</breite> <hoehe>7.0</hoehe> <beschreibung>Paket</beschreibung> </item> </colis> <auftrag_kuriere_dritte> <item> <kurier_id>101</kurier_id> </item> </auftrag_kuriere_dritte> <empfaenger_email>tobias.kapinos@ch.schindler.com</empfaenger_email> </auftrag>'; //For the hash-key we do not need the serverPW $url = $baseUrl . $privateKey . '/' . $timestamp . $resource; //generating hash which has to be placed in the header of the request. Header name: X-hash $resultHash = hash('sha256', $url . $contentData); $sendUrl = $baseUrl . $publicKey . '/' . $timestamp . $resource; $httpHeaders = array( "Content-Type: application/xml", "Accept: application/xml", "X-hash: " . $resultHash, "X-language: de", "Authorization: Basic ". base64_encode($basicAuthUser. ':'. $basicAuthPass), ); $httpheaderstring = implode(",", $httpHeaders); echo '$HTTP_HEADER..: '.$httpheaderstring."\n"; echo '$TIMESTAMP....: '.$timestamp."\n"; echo '$SEND_URL.....: '.$sendUrl."\n"; echo '$RESULTHASH...: '.$resultHash."\n"; echo '$URL_FOR_HASH.: '.$url."\n"; echo '$CONTENTDATA..: '.$contentData."\n";
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/eOJH4
function name:  (null)
number of ops:  61
compiled vars:  !0 = $privateKey, !1 = $publicKey, !2 = $resource, !3 = $timestamp, !4 = $baseUrl, !5 = $basicAuthUser, !6 = $basicAuthPass, !7 = $contentData, !8 = $url, !9 = $resultHash, !10 = $sendUrl, !11 = $httpHeaders, !12 = $httpheaderstring
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, '0ac56cf42961b3a00e3a54e8608ac56628331a1a21e28e44288b713442c05d9c'
    4     1        ASSIGN                                                   !1, 'd7830ae49fbe30ce79aa033662057fcb8c0d57959411066208444d709c3cd87a'
    6     2        ASSIGN                                                   !2, '%2Fshipment%2F'
    9     3        ASSIGN                                                   !3, '1414751747'
   12     4        ASSIGN                                                   !4, 'https%3A%2F%2Ftesting.swissconnect.ch%2Fapi%2F'
   13     5        ASSIGN                                                   !5, 'swissconnect'
   14     6        ASSIGN                                                   !6, 't3St-M4th1lda'
   16     7        ASSIGN                                                   !7, '%3C%3Fxml+version%3D%221.0%22%3F%3E%0A%3Cauftrag%3E%0A++++%3Csystem_fk_id%3E9999%3C%2Fsystem_fk_id%3E%0A++++%3Cstartdatum%3E2014-09-04+16%3A57%3A00%3C%2Fstartdatum%3E%0A++++%3Crechnungsbeschreibung_offiziell%3E4700946399+%2F+S-GE%3C%2Frechnungsbeschreibung_offiziell%3E%0A++++%3Crechnungsbeschreibung_intern%3EHier+allenfalls+Name+des+Bestellers%3C%2Frechnungsbeschreibung_intern%3E%0A++++%3Crechnungssteller%3E2%3C%2Frechnungssteller%3E%0A++++%3Cbezahl_kurier_id%3E600%3C%2Fbezahl_kurier_id%3E%0A++++%3Cbemerkung%3Ebitte+Monteur+30+Min.+vorher+anrufen+%2F+Appelz+le+monteur+30+Min.+avant+svp.%3C%2Fbemerkung%3E%0A++++%3Cauftrag_absender_kontaktadressen%3E%0A++++++++%3Citem%3E%0A++++++++++++%3Cfirma%3ESchindler+Aufz%C3%BCge+AG%2C+SP-SA%3C%2Ffirma%3E%0A++++++++++++%3Caddresse%3EZugerstr.+13%3C%2Faddresse%3E%0A++++++++++++%3Cpostleitzahl%3E6030%3C%2Fpostleitzahl%3E%0A++++++++++++%3Cort%3EEbikon%3C%2Fort%3E%0A++++++++++++%3Ckontakt%3EJ.Varga+%2F+041+445+47+64%3C%2Fkontakt%3E%0A++++++++%3C%2Fitem%3E%0A++++%3C%2Fauftrag_absender_kontaktadressen%3E%0A++++%3Cauftrag_empfaenger_kontaktadressen%3E%0A++++++++%3Citem%3E%0A++++++++++++%3Cfirma%3ESchindler+Aufz%C3%BCge+AG+Gen%C3%A8ve%3C%2Ffirma%3E%0A++++++++++++%3Caddresse%3Echemin+de+la+mairie+24%3C%2Faddresse%3E%0A++++++++++++%3Cpostleitzahl%3E1258%3C%2Fpostleitzahl%3E%0A++++++++++++%3Cort%3EPerly%3C%2Fort%3E%0A++++++++++++%3Ckontakt%3EN.Marcarini%3C%2Fkontakt%3E%0A++++++++%3C%2Fitem%3E%0A++++%3C%2Fauftrag_empfaenger_kontaktadressen%3E%0A++++%3Cauftrag_dritte_kontaktadressen%3E%0A++++++++%3Citem%3E%0A++++++++++++%3Ckontaktadresse_id%3E62300%3C%2Fkontaktadresse_id%3E%0A++++++++++++%3Cbezahlt_bool%3Etrue%3C%2Fbezahlt_bool%3E%0A++++++++%3C%2Fitem%3E%0A++++%3C%2Fauftrag_dritte_kontaktadressen%3E%0A++++%3Ccolis%3E%0A++++++++%3Citem%3E%0A++++++++++++%3Canzahl%3E1%3C%2Fanzahl%3E%0A++++++++++++%3Cgewicht%3E2.0%3C%2Fgewicht%3E%0A++++++++++++%3Claenge%3E30.0%3C%2Flaenge%3E%0A++++++++++++%3Cbreite%3E40.0%3C%2Fbreite%3E%0A++++++++++++%3Choehe%3E40.0%3C%2Fhoehe%3E%0A++++++++++++%3Cbeschreibung%3EPaket%3C%2Fbeschreibung%3E%0A++++++++++++%3Creferenz%3E1%3C%2Freferenz%3E%0A++++++++%3C%2Fitem%3E%0A++++++++%3Citem%3E%0A++++++++++++%3Canzahl%3E1%3C%2Fanzahl%3E%0A++++++++++++%3Cgewicht%3E4.0%3C%2Fgewicht%3E%0A++++++++++++%3Claenge%3E10.0%3C%2Flaenge%3E%0A++++++++++++%3Cbreite%3E20.0%3C%2Fbreite%3E%0A++++++++++++%3Choehe%3E20.0%3C%2Fhoehe%3E%0A++++++++++++%3Cbeschreibung%3EPaket%3C%2Fbeschreibung%3E%0A++++++++%3C%2Fitem%3E%0A++++++++%3Citem%3E%0A++++++++++++%3Canzahl%3E1%3C%2Fanzahl%3E%0A++++++++++++%3Cgewicht%3E3.3%3C%2Fgewicht%3E%0A++++++++++++%3Claenge%3E215.0%3C%2Flaenge%3E%0A++++++++++++%3Cbreite%3E11.0%3C%2Fbreite%3E%0A++++++++++++%3Choehe%3E7.0%3C%2Fhoehe%3E%0A++++++++++++%3Cbeschreibung%3EPaket%3C%2Fbeschreibung%3E%0A++++++++%3C%2Fitem%3E%0A++++%3C%2Fcolis%3E%0A++++%3Cauftrag_kuriere_dritte%3E%0A++++++++%3Citem%3E%0A++++++++++++%3Ckurier_id%3E101%3C%2Fkurier_id%3E%0A++++++++%3C%2Fitem%3E%0A++++%3C%2Fauftrag_kuriere_dritte%3E%0A++++%3Cempfaenger_email%3Etobias.kapinos%40ch.schindler.com%3C%2Fempfaenger_email%3E%0A%3C%2Fauftrag%3E'
   85     8        CONCAT                                           ~21     !4, !0
          9        CONCAT                                           ~22     ~21, '%2F'
         10        CONCAT                                           ~23     ~22, !3
         11        CONCAT                                           ~24     ~23, !2
         12        ASSIGN                                                   !8, ~24
   88    13        INIT_FCALL                                               'hash'
         14        SEND_VAL                                                 'sha256'
         15        CONCAT                                           ~26     !8, !7
         16        SEND_VAL                                                 ~26
         17        DO_ICALL                                         $27     
         18        ASSIGN                                                   !9, $27
   89    19        CONCAT                                           ~29     !4, !1
         20        CONCAT                                           ~30     ~29, '%2F'
         21        CONCAT                                           ~31     ~30, !3
         22        CONCAT                                           ~32     ~31, !2
         23        ASSIGN                                                   !10, ~32
   92    24        INIT_ARRAY                                       ~34     'Content-Type%3A+application%2Fxml'
   93    25        ADD_ARRAY_ELEMENT                                ~34     'Accept%3A+application%2Fxml'
   94    26        CONCAT                                           ~35     'X-hash%3A+', !9
         27        ADD_ARRAY_ELEMENT                                ~34     ~35
   95    28        ADD_ARRAY_ELEMENT                                ~34     'X-language%3A+de'
   96    29        INIT_FCALL                                               'base64_encode'
         30        CONCAT                                           ~36     !5, '%3A'
         31        CONCAT                                           ~37     ~36, !6
         32        SEND_VAL                                                 ~37
         33        DO_ICALL                                         $38     
         34        CONCAT                                           ~39     'Authorization%3A+Basic+', $38
         35        ADD_ARRAY_ELEMENT                                ~34     ~39
   91    36        ASSIGN                                                   !11, ~34
  101    37        INIT_FCALL                                               'implode'
         38        SEND_VAL                                                 '%2C'
         39        SEND_VAR                                                 !11
         40        DO_ICALL                                         $41     
         41        ASSIGN                                                   !12, $41
  102    42        CONCAT                                           ~43     '%24HTTP_HEADER..%3A+', !12
         43        CONCAT                                           ~44     ~43, '%0A'
         44        ECHO                                                     ~44
  103    45        CONCAT                                           ~45     '%24TIMESTAMP....%3A+', !3
         46        CONCAT                                           ~46     ~45, '%0A'
         47        ECHO                                                     ~46
  104    48        CONCAT                                           ~47     '%24SEND_URL.....%3A+', !10
         49        CONCAT                                           ~48     ~47, '%0A'
         50        ECHO                                                     ~48
  105    51        CONCAT                                           ~49     '%24RESULTHASH...%3A+', !9
         52        CONCAT                                           ~50     ~49, '%0A'
         53        ECHO                                                     ~50
  106    54        CONCAT                                           ~51     '%24URL_FOR_HASH.%3A+', !8
         55        CONCAT                                           ~52     ~51, '%0A'
         56        ECHO                                                     ~52
  107    57        CONCAT                                           ~53     '%24CONTENTDATA..%3A+', !7
         58        CONCAT                                           ~54     ~53, '%0A'
         59        ECHO                                                     ~54
         60      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
145.11 ms | 1404 KiB | 19 Q