3v4l.org

run code in 300+ PHP versions simultaneously
<?php require 'vendor/autoload.php'; Dotenv::load(__DIR__); $sendgrid_apikey = getenv('YOUR_SENDGRID_APIKEY'); $sendgrid = new SendGrid($sendgrid_apikey); $url = 'https://api.sendgrid.com/'; $pass = $sendgrid_apikey; $template_id = '<your_template_id>'; $js = array( 'sub' => array(':name' => array('Elmer')), 'filters' => array('templates' => array('settings' => array('enable' => 1, 'template_id' => $template_id))) ); $params = array( 'to' => "test@example.com", 'toname' => "Example User", 'from' => "you@youremail.com", 'fromname' => "Your Name", 'subject' => "PHP Test", 'text' => "I'm text!", 'html' => "<strong>I'm HTML!</strong>", 'x-smtpapi' => json_encode($js), ); $request = $url.'api/mail.send.json'; $session = curl_init($request); curl_setopt($session, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_2); curl_setopt($session, CURLOPT_HTTPHEADER, array('Authorization: Bearer ' . $sendgrid_apikey)); curl_setopt ($session, CURLOPT_POST, true); curl_setopt ($session, CURLOPT_POSTFIELDS, $params); curl_setopt($session, CURLOPT_HEADER, false); curl_setopt($session, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($session); curl_close($session); print_r($response);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/dQOSq
function name:  (null)
number of ops:  90
compiled vars:  !0 = $sendgrid_apikey, !1 = $sendgrid, !2 = $url, !3 = $pass, !4 = $template_id, !5 = $js, !6 = $params, !7 = $request, !8 = $session, !9 = $response
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   INCLUDE_OR_EVAL                                          'vendor%2Fautoload.php', REQUIRE
    3     1        INIT_STATIC_METHOD_CALL                                  'Dotenv', 'load'
          2        SEND_VAL_EX                                              '%2Fin'
          3        DO_FCALL                                      0          
    4     4        INIT_FCALL                                               'getenv'
          5        SEND_VAL                                                 'YOUR_SENDGRID_APIKEY'
          6        DO_ICALL                                         $12     
          7        ASSIGN                                                   !0, $12
    5     8        NEW                                              $14     'SendGrid'
          9        SEND_VAR_EX                                              !0
         10        DO_FCALL                                      0          
         11        ASSIGN                                                   !1, $14
    6    12        ASSIGN                                                   !2, 'https%3A%2F%2Fapi.sendgrid.com%2F'
    7    13        ASSIGN                                                   !3, !0
    8    14        ASSIGN                                                   !4, '%3Cyour_template_id%3E'
   10    15        INIT_ARRAY                                       ~20     <array>, 'sub'
   11    16        INIT_ARRAY                                       ~21     1, 'enable'
         17        ADD_ARRAY_ELEMENT                                ~21     !4, 'template_id'
         18        INIT_ARRAY                                       ~22     ~21, 'settings'
         19        INIT_ARRAY                                       ~23     ~22, 'templates'
         20        ADD_ARRAY_ELEMENT                                ~20     ~23, 'filters'
    9    21        ASSIGN                                                   !5, ~20
   15    22        INIT_ARRAY                                       ~25     'test%40example.com', 'to'
   16    23        ADD_ARRAY_ELEMENT                                ~25     'Example+User', 'toname'
   17    24        ADD_ARRAY_ELEMENT                                ~25     'you%40youremail.com', 'from'
   18    25        ADD_ARRAY_ELEMENT                                ~25     'Your+Name', 'fromname'
   19    26        ADD_ARRAY_ELEMENT                                ~25     'PHP+Test', 'subject'
   20    27        ADD_ARRAY_ELEMENT                                ~25     'I%27m+text%21', 'text'
   21    28        ADD_ARRAY_ELEMENT                                ~25     '%3Cstrong%3EI%27m+HTML%21%3C%2Fstrong%3E', 'html'
   22    29        INIT_FCALL                                               'json_encode'
         30        SEND_VAR                                                 !5
         31        DO_ICALL                                         $26     
         32        ADD_ARRAY_ELEMENT                                ~25     $26, 'x-smtpapi'
   14    33        ASSIGN                                                   !6, ~25
   25    34        CONCAT                                           ~28     !2, 'api%2Fmail.send.json'
         35        ASSIGN                                                   !7, ~28
   27    36        INIT_FCALL_BY_NAME                                       'curl_init'
         37        SEND_VAR_EX                                              !7
         38        DO_FCALL                                      0  $30     
         39        ASSIGN                                                   !8, $30
   28    40        INIT_FCALL_BY_NAME                                       'curl_setopt'
         41        SEND_VAR_EX                                              !8
         42        FETCH_CONSTANT                                   ~32     'CURLOPT_SSLVERSION'
         43        SEND_VAL_EX                                              ~32
         44        FETCH_CONSTANT                                   ~33     'CURL_SSLVERSION_TLSv1_2'
         45        SEND_VAL_EX                                              ~33
         46        DO_FCALL                                      0          
   29    47        INIT_FCALL_BY_NAME                                       'curl_setopt'
         48        SEND_VAR_EX                                              !8
         49        FETCH_CONSTANT                                   ~35     'CURLOPT_HTTPHEADER'
         50        SEND_VAL_EX                                              ~35
         51        CONCAT                                           ~36     'Authorization%3A+Bearer+', !0
         52        INIT_ARRAY                                       ~37     ~36
         53        SEND_VAL_EX                                              ~37
         54        DO_FCALL                                      0          
   31    55        INIT_FCALL_BY_NAME                                       'curl_setopt'
         56        SEND_VAR_EX                                              !8
         57        FETCH_CONSTANT                                   ~39     'CURLOPT_POST'
         58        SEND_VAL_EX                                              ~39
         59        SEND_VAL_EX                                              <true>
         60        DO_FCALL                                      0          
   32    61        INIT_FCALL_BY_NAME                                       'curl_setopt'
         62        SEND_VAR_EX                                              !8
         63        FETCH_CONSTANT                                   ~41     'CURLOPT_POSTFIELDS'
         64        SEND_VAL_EX                                              ~41
         65        SEND_VAR_EX                                              !6
         66        DO_FCALL                                      0          
   33    67        INIT_FCALL_BY_NAME                                       'curl_setopt'
         68        SEND_VAR_EX                                              !8
         69        FETCH_CONSTANT                                   ~43     'CURLOPT_HEADER'
         70        SEND_VAL_EX                                              ~43
         71        SEND_VAL_EX                                              <false>
         72        DO_FCALL                                      0          
   34    73        INIT_FCALL_BY_NAME                                       'curl_setopt'
         74        SEND_VAR_EX                                              !8
         75        FETCH_CONSTANT                                   ~45     'CURLOPT_RETURNTRANSFER'
         76        SEND_VAL_EX                                              ~45
         77        SEND_VAL_EX                                              <true>
         78        DO_FCALL                                      0          
   36    79        INIT_FCALL_BY_NAME                                       'curl_exec'
         80        SEND_VAR_EX                                              !8
         81        DO_FCALL                                      0  $47     
         82        ASSIGN                                                   !9, $47
   37    83        INIT_FCALL_BY_NAME                                       'curl_close'
         84        SEND_VAR_EX                                              !8
         85        DO_FCALL                                      0          
   39    86        INIT_FCALL                                               'print_r'
         87        SEND_VAR                                                 !9
         88        DO_ICALL                                                 
         89      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
171.21 ms | 1404 KiB | 19 Q