3v4l.org

run code in 300+ PHP versions simultaneously
<?php // Replace with real BROWSER API key from Google APIs $apiKey = "AIzaSyC5h1xbiGhEwaRk-tOQrQeFtMlWwmHtwH4"; // Replace with real client registration IDs. $registrationIDs = array( //"APA91bEbJescMxpwm0PMZd-UspllvFnrwUA0X2A3oWmERbCqpXjHDZVx7szq-ldZaYg9X1a9JEk8bQGkv_IibQL2U6L9HTR9-MQAXXcZ6tOvKlNxEbD0HLyCV9GSkkvwn2G2QNFSUVUbXUP_inlQwj5CHvKBeo0CdQ");//S3 //"APA91bEWRtIhum6Xi4pxn4tcCnb1wSq6gv0Hm6R20v1BelZh9dLQpg_UfAar8MMXj4XOR78EiyfFWum3sVNx18Qs86cjlIolI22_PLJJwuA4atecqt3cIbWW20-PaF2kD2pyvRmXlI8dHTUnpASz_-EoAvwHwmMduw");//CL - Mobile5 //"APA91bHtmlWTKy6K_xVwnUebzMDvAdmMIbGBP6fxItZbbjhh3GzEC0VMSJMsKCyOAU05yalNnWCc7hqw-V5BwhZ_vKYn3LnEsU-4gSaCPLzSdWB9ooj_7O0U2ewe440TDB5HmUhM1giY2kMjPnYWPCK-s7jDv51UGQ");//Keyboard //"APA91bFg4uqthQ9HSHDZd6DlC3bRz8D2kt40w4CWCiOLsJNhiLBg_jd4LEcxORNPcJ8XEeniLtggPOkypm9hAXJFEIG6R9H6NOwmiGaEQMdQ8DNl3hSmzwqmYOtTcAYiF5gDQTFT_TMFfxrfgqIizMv4xexHRzNK9g"); //Live Phone - Droid 4.0 //"APA91bE04AEsBIf8urAAs4hsttP3DnM92FFRB3Gzf75OW89VGLDlKYIEYQNUk7ptxl2Y9t2bskma73SeZDmO-k4UIhmZeyGmJqZrUpyqaclAiKJ2JAxpuMvgfe9rOmH09ko_5RtjaEfdjvn7bj9IPqEI3Py3MMOs9Q");//FL - Droid 4.0 //"APA91bEWP_UryT8nZc-rCeXljGBiq9gYyr1acJT2NlqJiDKHu7WEEB7kOEVmiI12hXqr8kafasGnDphjxPjGTwvJOG__7zoOpPD5VwJ-AI25PLZo11xybGlEXQeAwQpwvdq4JFMcTd9-uaHrwFJE8DGsFGX5oGHW2g");//HTC Purple //"APA91bHp2C2eCzeKA9GBnSny1ZBC-hOM_axAITcvMq5qe_hM_NOcNPUlILjgzFkPeKrMntkJvg4eFCApaEQTY4DQqX-E-r0rO1lGxu91mdu026GKImvbP7PwMgr48_NZhXi73v4VigCyZQ8La3FlZxu5AuFEQaJ5Rg");//Droid X2 //"APA91bFrALO9itzFOcAQcPdNelaK5yyv9Xde8oHxshypAt7agpnyE40-EPi7YFiWERqr44qrFv9c82bJhSXxHPY28NdCPAMcYebclHA4iMwcUHnXsa3IzD3qH2v3xsTpRLRg8nujKLxbYrDDZbEWYyIrVQG5lH1PLA");//My Keyboard - Mobile9 //"APA91bEhF3EHsvJEMo-WUHsIu-APWALnEwiWn0WVh9dwhf2rR9Kb0bxj-kqyf-m5w8pRzPG-ixGu5Q8hkOwodtvQVdm2hYxEEtOp5-mtQVBT7tq3GwMDEbh6zGQi0PmQksmnN1PlruMFWVIKKQKCb9z3qaEQq3R2vg");//HTC4 - Mobile4 "APA91bEjV01rZKePGrlgKH__n76BhF0OclP_urQWX4l_qfXJKC1kM3yHematwcNBiY5x0ZSY1qC89xKyGx5VaH3UDdds0HxBrwE3wcOfkJKEkBhRVeuyKF1wAAww0d4TxNQsvZavSLlOnAVLgBtvb1yRwBi2GP2Cbg");//S4 - Mobile19 //"APA91bFIWmNzFY01Tusn8Isj4qexRa0sih6eHK5V9kkksiItA0tvA2-ZDxC_MZVddCcD9dE1-LXfVVhQufdb16ImkWSy5FiCupbbx1DsRNCk5dRDCEO2x_UNJTEeZlII0Zzxi9ETpyw7NjEKF5ZUY3g09C5HcR1OCA"); //Note 3 - Mobile 23 // Message to be sent $message = "New message received"; $type = "email"; //$message = "New video received"; //$type = "videogram"; // Set POST variables. $url = 'https://android.googleapis.com/gcm/send'; $fields = array( 'registration_ids' => $registrationIDs, 'data' => array( "message" => $message, "type" => $type) ); $headers = array( 'Authorization: key=' . $apiKey, 'Content-Type: application/json' ); // Open connection $ch = curl_init(); // Set the url, number of POST vars, POST data curl_setopt( $ch, CURLOPT_URL, $url ); curl_setopt( $ch, CURLOPT_POST, true ); curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers); curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true ); curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt( $ch, CURLOPT_POSTFIELDS, json_encode( $fields ) ); // Execute post $result = curl_exec($ch); // Close connection curl_close($ch); // Echo success or failure echo $result; ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/uOsam
function name:  (null)
number of ops:  65
compiled vars:  !0 = $apiKey, !1 = $registrationIDs, !2 = $message, !3 = $type, !4 = $url, !5 = $fields, !6 = $headers, !7 = $ch, !8 = $result
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, 'AIzaSyC5h1xbiGhEwaRk-tOQrQeFtMlWwmHtwH4'
    6     1        ASSIGN                                                   !1, <array>
   20     2        ASSIGN                                                   !2, 'New+message+received'
   21     3        ASSIGN                                                   !3, 'email'
   27     4        ASSIGN                                                   !4, 'https%3A%2F%2Fandroid.googleapis.com%2Fgcm%2Fsend'
   30     5        INIT_ARRAY                                       ~14     !1, 'registration_ids'
   31     6        INIT_ARRAY                                       ~15     !2, 'message'
   32     7        ADD_ARRAY_ELEMENT                                ~15     !3, 'type'
          8        ADD_ARRAY_ELEMENT                                ~14     ~15, 'data'
   29     9        ASSIGN                                                   !5, ~14
   36    10        CONCAT                                           ~17     'Authorization%3A+key%3D', !0
         11        INIT_ARRAY                                       ~18     ~17
   37    12        ADD_ARRAY_ELEMENT                                ~18     'Content-Type%3A+application%2Fjson'
   35    13        ASSIGN                                                   !6, ~18
   41    14        INIT_FCALL_BY_NAME                                       'curl_init'
         15        DO_FCALL                                      0  $20     
         16        ASSIGN                                                   !7, $20
   44    17        INIT_FCALL_BY_NAME                                       'curl_setopt'
         18        SEND_VAR_EX                                              !7
         19        FETCH_CONSTANT                                   ~22     'CURLOPT_URL'
         20        SEND_VAL_EX                                              ~22
         21        SEND_VAR_EX                                              !4
         22        DO_FCALL                                      0          
   46    23        INIT_FCALL_BY_NAME                                       'curl_setopt'
         24        SEND_VAR_EX                                              !7
         25        FETCH_CONSTANT                                   ~24     'CURLOPT_POST'
         26        SEND_VAL_EX                                              ~24
         27        SEND_VAL_EX                                              <true>
         28        DO_FCALL                                      0          
   47    29        INIT_FCALL_BY_NAME                                       'curl_setopt'
         30        SEND_VAR_EX                                              !7
         31        FETCH_CONSTANT                                   ~26     'CURLOPT_HTTPHEADER'
         32        SEND_VAL_EX                                              ~26
         33        SEND_VAR_EX                                              !6
         34        DO_FCALL                                      0          
   48    35        INIT_FCALL_BY_NAME                                       'curl_setopt'
         36        SEND_VAR_EX                                              !7
         37        FETCH_CONSTANT                                   ~28     'CURLOPT_RETURNTRANSFER'
         38        SEND_VAL_EX                                              ~28
         39        SEND_VAL_EX                                              <true>
         40        DO_FCALL                                      0          
   49    41        INIT_FCALL_BY_NAME                                       'curl_setopt'
         42        SEND_VAR_EX                                              !7
         43        FETCH_CONSTANT                                   ~30     'CURLOPT_SSL_VERIFYPEER'
         44        SEND_VAL_EX                                              ~30
         45        SEND_VAL_EX                                              0
         46        DO_FCALL                                      0          
   50    47        INIT_FCALL_BY_NAME                                       'curl_setopt'
         48        SEND_VAR_EX                                              !7
         49        FETCH_CONSTANT                                   ~32     'CURLOPT_POSTFIELDS'
         50        SEND_VAL_EX                                              ~32
         51        INIT_FCALL                                               'json_encode'
         52        SEND_VAR                                                 !5
         53        DO_ICALL                                         $33     
         54        SEND_VAR_NO_REF_EX                                       $33
         55        DO_FCALL                                      0          
   53    56        INIT_FCALL_BY_NAME                                       'curl_exec'
         57        SEND_VAR_EX                                              !7
         58        DO_FCALL                                      0  $35     
         59        ASSIGN                                                   !8, $35
   56    60        INIT_FCALL_BY_NAME                                       'curl_close'
         61        SEND_VAR_EX                                              !7
         62        DO_FCALL                                      0          
   59    63        ECHO                                                     !8
   60    64      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
164.12 ms | 1400 KiB | 15 Q