3v4l.org

run code in 300+ PHP versions simultaneously
<?php $url = "http://suitecrm.atl.com.hk/crm-1/service/v4_1/rest.php"; $username = "magneticone"; $password = "magneticone"; //function to make cURL request function call($method, $parameters, $url) { ob_start(); $curl_request = curl_init(); curl_setopt($curl_request, CURLOPT_URL, $url); curl_setopt($curl_request, CURLOPT_POST, 1); curl_setopt($curl_request, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0); curl_setopt($curl_request, CURLOPT_HEADER, 1); curl_setopt($curl_request, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($curl_request, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl_request, CURLOPT_FOLLOWLOCATION, 0); $jsonEncodedData = json_encode($parameters); $post = array( "method" => $method, "input_type" => "JSON", "response_type" => "JSON", "rest_data" => $jsonEncodedData ); curl_setopt($curl_request, CURLOPT_POSTFIELDS, $post); $result = curl_exec($curl_request); curl_close($curl_request); $result = explode("\r\n\r\n", $result, 2); $response = json_decode($result[1]); ob_end_flush(); return $response; } //login ------------------------------ $login_parameters = array( "user_auth" => array( "user_name" => $username, "password" => md5($password), "version" => "1" ), "application_name" => "RestTest", "name_value_list" => array(), ); $login_result = call("login", $login_parameters, $url); echo "<pre>"; print_r($login_result); echo "</pre>"; //get session id $session_id = $login_result->id; ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/hes2r
function name:  (null)
number of ops:  27
compiled vars:  !0 = $url, !1 = $username, !2 = $password, !3 = $login_parameters, !4 = $login_result, !5 = $session_id
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, 'http%3A%2F%2Fsuitecrm.atl.com.hk%2Fcrm-1%2Fservice%2Fv4_1%2Frest.php'
    4     1        ASSIGN                                                   !1, 'magneticone'
    5     2        ASSIGN                                                   !2, 'magneticone'
   44     3        INIT_ARRAY                                       ~9      !1, 'user_name'
   45     4        INIT_FCALL                                               'md5'
          5        SEND_VAR                                                 !2
          6        DO_ICALL                                         $10     
          7        ADD_ARRAY_ELEMENT                                ~9      $10, 'password'
   46     8        ADD_ARRAY_ELEMENT                                ~9      '1', 'version'
          9        INIT_ARRAY                                       ~11     ~9, 'user_auth'
   48    10        ADD_ARRAY_ELEMENT                                ~11     'RestTest', 'application_name'
   44    11        ADD_ARRAY_ELEMENT                                ~11     <array>, 'name_value_list'
   42    12        ASSIGN                                                   !3, ~11
   52    13        INIT_FCALL                                               'call'
         14        SEND_VAL                                                 'login'
         15        SEND_VAR                                                 !3
         16        SEND_VAR                                                 !0
         17        DO_FCALL                                      0  $13     
         18        ASSIGN                                                   !4, $13
   54    19        ECHO                                                     '%3Cpre%3E'
   55    20        INIT_FCALL                                               'print_r'
         21        SEND_VAR                                                 !4
         22        DO_ICALL                                                 
   56    23        ECHO                                                     '%3C%2Fpre%3E'
   59    24        FETCH_OBJ_R                                      ~16     !4, 'id'
         25        ASSIGN                                                   !5, ~16
   61    26      > RETURN                                                   1

Function call:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/hes2r
function name:  call
number of ops:  88
compiled vars:  !0 = $method, !1 = $parameters, !2 = $url, !3 = $curl_request, !4 = $jsonEncodedData, !5 = $post, !6 = $result, !7 = $response
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    8     0  E >   RECV                                             !0      
          1        RECV                                             !1      
          2        RECV                                             !2      
   10     3        INIT_FCALL                                               'ob_start'
          4        DO_ICALL                                                 
   11     5        INIT_FCALL_BY_NAME                                       'curl_init'
          6        DO_FCALL                                      0  $9      
          7        ASSIGN                                                   !3, $9
   13     8        INIT_FCALL_BY_NAME                                       'curl_setopt'
          9        SEND_VAR_EX                                              !3
         10        FETCH_CONSTANT                                   ~11     'CURLOPT_URL'
         11        SEND_VAL_EX                                              ~11
         12        SEND_VAR_EX                                              !2
         13        DO_FCALL                                      0          
   14    14        INIT_FCALL_BY_NAME                                       'curl_setopt'
         15        SEND_VAR_EX                                              !3
         16        FETCH_CONSTANT                                   ~13     'CURLOPT_POST'
         17        SEND_VAL_EX                                              ~13
         18        SEND_VAL_EX                                              1
         19        DO_FCALL                                      0          
   15    20        INIT_FCALL_BY_NAME                                       'curl_setopt'
         21        SEND_VAR_EX                                              !3
         22        FETCH_CONSTANT                                   ~15     'CURLOPT_HTTP_VERSION'
         23        SEND_VAL_EX                                              ~15
         24        FETCH_CONSTANT                                   ~16     'CURL_HTTP_VERSION_1_0'
         25        SEND_VAL_EX                                              ~16
         26        DO_FCALL                                      0          
   16    27        INIT_FCALL_BY_NAME                                       'curl_setopt'
         28        SEND_VAR_EX                                              !3
         29        FETCH_CONSTANT                                   ~18     'CURLOPT_HEADER'
         30        SEND_VAL_EX                                              ~18
         31        SEND_VAL_EX                                              1
         32        DO_FCALL                                      0          
   17    33        INIT_FCALL_BY_NAME                                       'curl_setopt'
         34        SEND_VAR_EX                                              !3
         35        FETCH_CONSTANT                                   ~20     'CURLOPT_SSL_VERIFYPEER'
         36        SEND_VAL_EX                                              ~20
         37        SEND_VAL_EX                                              0
         38        DO_FCALL                                      0          
   18    39        INIT_FCALL_BY_NAME                                       'curl_setopt'
         40        SEND_VAR_EX                                              !3
         41        FETCH_CONSTANT                                   ~22     'CURLOPT_RETURNTRANSFER'
         42        SEND_VAL_EX                                              ~22
         43        SEND_VAL_EX                                              1
         44        DO_FCALL                                      0          
   19    45        INIT_FCALL_BY_NAME                                       'curl_setopt'
         46        SEND_VAR_EX                                              !3
         47        FETCH_CONSTANT                                   ~24     'CURLOPT_FOLLOWLOCATION'
         48        SEND_VAL_EX                                              ~24
         49        SEND_VAL_EX                                              0
         50        DO_FCALL                                      0          
   21    51        INIT_FCALL                                               'json_encode'
         52        SEND_VAR                                                 !1
         53        DO_ICALL                                         $26     
         54        ASSIGN                                                   !4, $26
   24    55        INIT_ARRAY                                       ~28     !0, 'method'
   25    56        ADD_ARRAY_ELEMENT                                ~28     'JSON', 'input_type'
   26    57        ADD_ARRAY_ELEMENT                                ~28     'JSON', 'response_type'
   27    58        ADD_ARRAY_ELEMENT                                ~28     !4, 'rest_data'
   23    59        ASSIGN                                                   !5, ~28
   30    60        INIT_FCALL_BY_NAME                                       'curl_setopt'
         61        SEND_VAR_EX                                              !3
         62        FETCH_CONSTANT                                   ~30     'CURLOPT_POSTFIELDS'
         63        SEND_VAL_EX                                              ~30
         64        SEND_VAR_EX                                              !5
         65        DO_FCALL                                      0          
   31    66        INIT_FCALL_BY_NAME                                       'curl_exec'
         67        SEND_VAR_EX                                              !3
         68        DO_FCALL                                      0  $32     
         69        ASSIGN                                                   !6, $32
   32    70        INIT_FCALL_BY_NAME                                       'curl_close'
         71        SEND_VAR_EX                                              !3
         72        DO_FCALL                                      0          
   34    73        INIT_FCALL                                               'explode'
         74        SEND_VAL                                                 '%0D%0A%0D%0A'
         75        SEND_VAR                                                 !6
         76        SEND_VAL                                                 2
         77        DO_ICALL                                         $35     
         78        ASSIGN                                                   !6, $35
   35    79        INIT_FCALL                                               'json_decode'
         80        FETCH_DIM_R                                      ~37     !6, 1
         81        SEND_VAL                                                 ~37
         82        DO_ICALL                                         $38     
         83        ASSIGN                                                   !7, $38
   36    84        INIT_FCALL                                               'ob_end_flush'
         85        DO_ICALL                                                 
   38    86      > RETURN                                                   !7
   39    87*     > RETURN                                                   null

End of function call

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
162.52 ms | 1407 KiB | 28 Q