3v4l.org

run code in 300+ PHP versions simultaneously
<?php if (!isset($_SESSION)) { session_start(); } function dumpDOMnodeList($xml) { $docTmp = new DOMDocument(); foreach($xml as $n) $docTmp->appendChild($docTmp->importNode($n,true)); //echo '<pre>'; print_r($docTmp->saveHTML()); //echo '</pre>'; } class ipm { //BEGIN VARIABLES public $soapVersion; public $soapLocation; public $soapContext; public $soapParameters; public $soapClient; public $soapCookies; public $soapService; const groupID = '104362395629'; //MAIN GROUP NUMBER WITHIN IPM, NEVER CHANGES //END VARIABLES //BEGIN CONSTRUCTOR function __construct($soapService) { $this->soapService = $soapService; //STATUS OR CONFIG $this->soapVersion = '1.2'; $this->soapLocation = 'https://webservice.domain/soap/'.$this->soapService.'.asmx'; $this->soapContext = stream_context_create(array('ssl' => array('verify_peer' => TRUE))); $this->soapParameters = array ( 'location' => $this->soapLocation, 'login' => 'user', 'password' => 'password', 'stream_context' => $this->soapContext, 'trace' => 1, 'keep_alive' => 1, 'cache_wsdl' => WSDL_CACHE_NONE ); $this->soapClient = new SoapClient('./'.$this->soapService.'.wsdl',$this->soapParameters); } //END CONSTRUCTOR //BEGIN PRIVATE FUNCTIONS private function schemaOpen($fn='',$vars) { $tmp = '<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">'; if(empty($vars)) { return $tmp.'<soap:Body><'.$fn.' xmlns="'.$this->schemaBase().'" />'; } else { return $tmp.'<soap:Body><'.$fn.' xmlns="'.$this->schemaBase().'">'; } } private function schemaClose($fn='',$vars) { if(empty($vars)) { return '</soap:Body></soap:Envelope>'; } else { return '</'.$fn.'></soap:Body></soap:Envelope>'; } } private function schemaBase($fn='') { return 'http://schemas.ipmonitor.com/ipm70/'.$fn; } private function dumpDOMnodeList($xml) { $docTmp = new DOMDocument(); foreach($xml as $n) $docTmp->appendChild($docTmp->importNode($n,true)); echo '<pre>'; print_r(htmlentities($docTmp->saveHTML())); echo '</pre>'; } private function debugSoap() { echo '<pre>'; echo $this->soapClient->__getLastRequestHeaders(); echo $this->soapClient->__getLastRequest(); echo $this->soapClient->__getLastResponseHeaders(); echo '</pre>'; } private function soapRequest($fn='',$vars=array()) { $xml=$this->schemaOpen($fn,$vars); foreach($vars as $key=>$val) { $xml .= '<'.$key.'>'.$val.'</'.$key.'>'; } $xml.=$this->schemaClose($fn,$vars); return $xml; } private function callMethod($fn,$vars=array()) { $soapRequest = $this->soapRequest($fn,$vars); $soapAction = $this->schemaBase($fn); $soapResponse = $this->soapClient->__doRequest($soapRequest, $this->soapLocation, $soapAction, $this->soapVersion,0); $this->logSoap($soapRequest, $this->soapLocation, $soapAction, $this->soapVersion, $soapResponse,$this->debugSoap()); return $soapResponse; } private function logSoap($request, $location, $action, $version, $reponse, $debug) { file_put_contents('soap_log', date('m-d-Y H:i:s')."\r\nRequest: $request\r\n\r\nLocation: $location\r\nAction: $action\r\nVersion: $version\r\nResponse: $response\r\nDebug: $debug\r\n\r\n"); } //END PRIVATE FUNCTIONS //BEGIN METHODS public function GetGroup($rtGroupID) { /* GetGroup returns the status and some minor details about a specific Monitor. */ return $this->callMethod(__FUNCTION__,array('id'=>$rtGroupID)); } public function GetGroups() { /* GetGroups returns the status of members and depends of a specific Group */ return $this->callMethod(__FUNCTION__,array()); } public function GetMonitors($rtGroupID) { /* GetMonitor returns the status of the members and depends of a specific Group. */ return $this->callMethod(__FUNCTION__,array('groupid'=>$rtGroupID,'bTroubleOnly'=>'TRUE')); } public function GetMonitor($rtMonitorID) { /* GetMonitor returns the status and some minor details about a specific Monitor. */ return $this->callMethod(__FUNCTION__,array('id'=>$rtMonitorID)); } public function MonitorView($rtMonitorID) { /* MonitorView retrieves an ipMonitor 7 Monitor objects's settings in xml format. */ return $this->callMethod(__FUNCTION__,array('mon_id'=>$rtMonitorID)); } public function GroupList() { /* GroupList retrieves the ID's of all the existing Group objects. */ return $this->callMethod(__FUNCTION__,array()); } public function GroupView($rtGroupID) { /* GroupView retrieves an ipMonitor 7 Group objects's settings in xml format. */ return $this->callMethod(__FUNCTION__,array('groupid'=>$rtGroupID)); } //END METHODS } /* BEGIN GET ALL DOWN MONITORS */ $ipm = new ipm('status'); $ipmGroups = $ipm->GetGroups(); if(!empty($ipmGroups)) { $doc = new DOMDocument(); $doc->LoadXML($ipmGroups); $xpath = new DOMXpath($doc); $xpath->registerNamespace('soap', 'http://schemas.xmlsoap.org/soap/envelope/'); $xpath->registerNamespace('def', 'http://schemas.ipmonitor.com/ipm70/'); $ipmGroupsAlarming = $xpath->query("/soap:Envelope/soap:Body/def:GetGroupsResponse/def:GetGroupsResult/def:rtGroup[(contains(def:status,'lost') or contains(def:status,'warn') or contains(def:status,'down')) and contains(def:isroot,'false')]"); $numGroupsAlarming = $ipmGroupsAlarming->length; if($numGroupsAlarming === 0) { echo '<div class="text-success">No issues</div>'."\r\n"; } else { unset($ipm,$ipmGroups,$doc,$xpath,$numGroupsAlarming); foreach($ipmGroupsAlarming as $ipmGroupAlarming) { $groupName = $ipmGroupAlarming->getElementsByTagName('name')->item(0)->nodeValue; $groupStatus = $ipmGroupAlarming->getElementsByTagName('status')->item(0)->nodeValue; $groupID = $ipmGroupAlarming->getElementsByTagName('id')->item(0)->nodeValue; echo $groupName.'<br/>'."\r\n"; $ipm = new ipm('status'); $ipmMonitors= $ipm->GetMonitors($groupID); $doc = new DOMDocument(); $doc->LoadXML($ipmMonitors); $xpath = new DOMXpath($doc); $xpath->registerNamespace('soap', 'http://schemas.xmlsoap.org/soap/envelope/'); $xpath->registerNamespace('def', 'http://schemas.ipmonitor.com/ipm70/'); $ipmMonitorsAlarming = $xpath->query("/soap:Envelope/soap:Body/def:GetMonitorsResponse/def:GetMonitorsResult/def:rtMonitor"); $numMonitorsAlarming = $ipmMonitorsAlarming->length; if($numMonitorsAlarming === 0) { echo 'No Monitors Down Under This Device<br/>'."\r\n"; } else { foreach($ipmMonitorsAlarming as $ipmMonitorAlarming) { $monitorName = $ipmMonitorAlarming->getElementsByTagName('name')->item(0)->nodeValue; $monitorStatus = $ipmMonitorAlarming->getElementsByTagName('status')->item(0)->nodeValue; $monitorID = $ipmMonitorAlarming->getElementsByTagName('id')->item(0)->nodeValue; echo '--&gt; '.$monitorStatus.' - '.$monitorName.'<br/>'."\r\n"; } } unset($ipm,$ipmMonitors,$doc,$xpath,$numMonitorsAlarming,$ipmMonitorsAlarming); echo '<br/>'; } } } elseif($ipmGroups == NULL) {echo 'NULL SOAP RESPONSE';} else { echo 'No issues'."\r\n"; } /* END GET ALL DOWN MONITORS */ ?>
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 3, Position 2 = 5
Branch analysis from position: 3
2 jumps found. (Code = 43) Position 1 = 15, Position 2 = 157
Branch analysis from position: 15
2 jumps found. (Code = 43) Position 1 = 41, Position 2 = 43
Branch analysis from position: 41
1 jumps found. (Code = 42) Position 1 = 156
Branch analysis from position: 156
1 jumps found. (Code = 42) Position 1 = 162
Branch analysis from position: 162
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 43
2 jumps found. (Code = 77) Position 1 = 49, Position 2 = 155
Branch analysis from position: 49
2 jumps found. (Code = 78) Position 1 = 50, Position 2 = 155
Branch analysis from position: 50
2 jumps found. (Code = 43) Position 1 = 111, Position 2 = 113
Branch analysis from position: 111
1 jumps found. (Code = 42) Position 1 = 147
Branch analysis from position: 147
1 jumps found. (Code = 42) Position 1 = 49
Branch analysis from position: 49
Branch analysis from position: 113
2 jumps found. (Code = 77) Position 1 = 114, Position 2 = 146
Branch analysis from position: 114
2 jumps found. (Code = 78) Position 1 = 115, Position 2 = 146
Branch analysis from position: 115
1 jumps found. (Code = 42) Position 1 = 114
Branch analysis from position: 114
Branch analysis from position: 146
1 jumps found. (Code = 42) Position 1 = 49
Branch analysis from position: 49
Branch analysis from position: 146
Branch analysis from position: 155
1 jumps found. (Code = 42) Position 1 = 162
Branch analysis from position: 162
Branch analysis from position: 155
Branch analysis from position: 157
2 jumps found. (Code = 43) Position 1 = 159, Position 2 = 161
Branch analysis from position: 159
1 jumps found. (Code = 42) Position 1 = 162
Branch analysis from position: 162
Branch analysis from position: 161
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 5
filename:       /in/jeSkS
function name:  (null)
number of ops:  163
compiled vars:  !0 = $ipm, !1 = $ipmGroups, !2 = $doc, !3 = $xpath, !4 = $ipmGroupsAlarming, !5 = $numGroupsAlarming, !6 = $ipmGroupAlarming, !7 = $groupName, !8 = $groupStatus, !9 = $groupID, !10 = $ipmMonitors, !11 = $ipmMonitorsAlarming, !12 = $numMonitorsAlarming, !13 = $ipmMonitorAlarming, !14 = $monitorName, !15 = $monitorStatus, !16 = $monitorID
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ISSET_ISEMPTY_VAR                             2  ~17     '_SESSION'
          1        BOOL_NOT                                         ~18     ~17
          2      > JMPZ                                                     ~18, ->5
    4     3    >   INIT_FCALL                                               'session_start'
          4        DO_ICALL                                                 
  183     5    >   NEW                                              $20     'ipm'
          6        SEND_VAL_EX                                              'status'
          7        DO_FCALL                                      0          
          8        ASSIGN                                                   !0, $20
  184     9        INIT_METHOD_CALL                                         !0, 'GetGroups'
         10        DO_FCALL                                      0  $23     
         11        ASSIGN                                                   !1, $23
  185    12        ISSET_ISEMPTY_CV                                 ~25     !1
         13        BOOL_NOT                                         ~26     ~25
         14      > JMPZ                                                     ~26, ->157
  187    15    >   NEW                                              $27     'DOMDocument'
         16        DO_FCALL                                      0          
         17        ASSIGN                                                   !2, $27
  188    18        INIT_METHOD_CALL                                         !2, 'LoadXML'
         19        SEND_VAR_EX                                              !1
         20        DO_FCALL                                      0          
  189    21        NEW                                              $31     'DOMXpath'
         22        SEND_VAR_EX                                              !2
         23        DO_FCALL                                      0          
         24        ASSIGN                                                   !3, $31
  190    25        INIT_METHOD_CALL                                         !3, 'registerNamespace'
         26        SEND_VAL_EX                                              'soap'
         27        SEND_VAL_EX                                              'http%3A%2F%2Fschemas.xmlsoap.org%2Fsoap%2Fenvelope%2F'
         28        DO_FCALL                                      0          
  191    29        INIT_METHOD_CALL                                         !3, 'registerNamespace'
         30        SEND_VAL_EX                                              'def'
         31        SEND_VAL_EX                                              'http%3A%2F%2Fschemas.ipmonitor.com%2Fipm70%2F'
         32        DO_FCALL                                      0          
  192    33        INIT_METHOD_CALL                                         !3, 'query'
         34        SEND_VAL_EX                                              '%2Fsoap%3AEnvelope%2Fsoap%3ABody%2Fdef%3AGetGroupsResponse%2Fdef%3AGetGroupsResult%2Fdef%3ArtGroup%5B%28contains%28def%3Astatus%2C%27lost%27%29+or+contains%28def%3Astatus%2C%27warn%27%29+or+contains%28def%3Astatus%2C%27down%27%29%29+and+contains%28def%3Aisroot%2C%27false%27%29%5D'
         35        DO_FCALL                                      0  $36     
         36        ASSIGN                                                   !4, $36
  194    37        FETCH_OBJ_R                                      ~38     !4, 'length'
         38        ASSIGN                                                   !5, ~38
  195    39        IS_IDENTICAL                                             !5, 0
         40      > JMPZ                                                     ~40, ->43
  197    41    >   ECHO                                                     '%3Cdiv+class%3D%22text-success%22%3ENo+issues%3C%2Fdiv%3E%0D%0A'
         42      > JMP                                                      ->156
  201    43    >   UNSET_CV                                                 !0
         44        UNSET_CV                                                 !1
         45        UNSET_CV                                                 !2
         46        UNSET_CV                                                 !3
         47        UNSET_CV                                                 !5
  202    48      > FE_RESET_R                                       $41     !4, ->155
         49    > > FE_FETCH_R                                               $41, !6, ->155
  204    50    >   INIT_METHOD_CALL                                         !6, 'getElementsByTagName'
         51        SEND_VAL_EX                                              'name'
         52        DO_FCALL                                      0  $42     
         53        INIT_METHOD_CALL                                         $42, 'item'
         54        SEND_VAL_EX                                              0
         55        DO_FCALL                                      0  $43     
         56        FETCH_OBJ_R                                      ~44     $43, 'nodeValue'
         57        ASSIGN                                                   !7, ~44
  205    58        INIT_METHOD_CALL                                         !6, 'getElementsByTagName'
         59        SEND_VAL_EX                                              'status'
         60        DO_FCALL                                      0  $46     
         61        INIT_METHOD_CALL                                         $46, 'item'
         62        SEND_VAL_EX                                              0
         63        DO_FCALL                                      0  $47     
         64        FETCH_OBJ_R                                      ~48     $47, 'nodeValue'
         65        ASSIGN                                                   !8, ~48
  206    66        INIT_METHOD_CALL                                         !6, 'getElementsByTagName'
         67        SEND_VAL_EX                                              'id'
         68        DO_FCALL                                      0  $50     
         69        INIT_METHOD_CALL                                         $50, 'item'
         70        SEND_VAL_EX                                              0
         71        DO_FCALL                                      0  $51     
         72        FETCH_OBJ_R                                      ~52     $51, 'nodeValue'
         73        ASSIGN                                                   !9, ~52
  208    74        CONCAT                                           ~54     !7, '%3Cbr%2F%3E'
         75        CONCAT                                           ~55     ~54, '%0D%0A'
         76        ECHO                                                     ~55
  210    77        NEW                                              $56     'ipm'
         78        SEND_VAL_EX                                              'status'
         79        DO_FCALL                                      0          
         80        ASSIGN                                                   !0, $56
  211    81        INIT_METHOD_CALL                                         !0, 'GetMonitors'
         82        SEND_VAR_EX                                              !9
         83        DO_FCALL                                      0  $59     
         84        ASSIGN                                                   !10, $59
  213    85        NEW                                              $61     'DOMDocument'
         86        DO_FCALL                                      0          
         87        ASSIGN                                                   !2, $61
  214    88        INIT_METHOD_CALL                                         !2, 'LoadXML'
         89        SEND_VAR_EX                                              !10
         90        DO_FCALL                                      0          
  215    91        NEW                                              $65     'DOMXpath'
         92        SEND_VAR_EX                                              !2
         93        DO_FCALL                                      0          
         94        ASSIGN                                                   !3, $65
  216    95        INIT_METHOD_CALL                                         !3, 'registerNamespace'
         96        SEND_VAL_EX                                              'soap'
         97        SEND_VAL_EX                                              'http%3A%2F%2Fschemas.xmlsoap.org%2Fsoap%2Fenvelope%2F'
         98        DO_FCALL                                      0          
  217    99        INIT_METHOD_CALL                                         !3, 'registerNamespace'
        100        SEND_VAL_EX                                              'def'
        101        SEND_VAL_EX                                              'http%3A%2F%2Fschemas.ipmonitor.com%2Fipm70%2F'
        102        DO_FCALL                                      0          
  218   103        INIT_METHOD_CALL                                         !3, 'query'
        104        SEND_VAL_EX                                              '%2Fsoap%3AEnvelope%2Fsoap%3ABody%2Fdef%3AGetMonitorsResponse%2Fdef%3AGetMonitorsResult%2Fdef%3ArtMonitor'
        105        DO_FCALL                                      0  $70     
        106        ASSIGN                                                   !11, $70
  220   107        FETCH_OBJ_R                                      ~72     !11, 'length'
        108        ASSIGN                                                   !12, ~72
  221   109        IS_IDENTICAL                                             !12, 0
        110      > JMPZ                                                     ~74, ->113
  223   111    >   ECHO                                                     'No+Monitors+Down+Under+This+Device%3Cbr%2F%3E%0D%0A'
        112      > JMP                                                      ->147
  227   113    > > FE_RESET_R                                       $75     !11, ->146
        114    > > FE_FETCH_R                                               $75, !13, ->146
  229   115    >   INIT_METHOD_CALL                                         !13, 'getElementsByTagName'
        116        SEND_VAL_EX                                              'name'
        117        DO_FCALL                                      0  $76     
        118        INIT_METHOD_CALL                                         $76, 'item'
        119        SEND_VAL_EX                                              0
        120        DO_FCALL                                      0  $77     
        121        FETCH_OBJ_R                                      ~78     $77, 'nodeValue'
        122        ASSIGN                                                   !14, ~78
  230   123        INIT_METHOD_CALL                                         !13, 'getElementsByTagName'
        124        SEND_VAL_EX                                              'status'
        125        DO_FCALL                                      0  $80     
        126        INIT_METHOD_CALL                                         $80, 'item'
        127        SEND_VAL_EX                                              0
        128        DO_FCALL                                      0  $81     
        129        FETCH_OBJ_R                                      ~82     $81, 'nodeValue'
        130        ASSIGN                                                   !15, ~82
  231   131        INIT_METHOD_CALL                                         !13, 'getElementsByTagName'
        132        SEND_VAL_EX                                              'id'
        133        DO_FCALL                                      0  $84     
        134        INIT_METHOD_CALL                                         $84, 'item'
        135        SEND_VAL_EX                                              0
        136        DO_FCALL                                      0  $85     
        137        FETCH_OBJ_R                                      ~86     $85, 'nodeValue'
        138        ASSIGN                                                   !16, ~86
  233   139        CONCAT                                           ~88     '--%26gt%3B+', !15
        140        CONCAT                                           ~89     ~88, '+-+'
        141        CONCAT                                           ~90     ~89, !14
        142        CONCAT                                           ~91     ~90, '%3Cbr%2F%3E'
        143        CONCAT                                           ~92     ~91, '%0D%0A'
        144        ECHO                                                     ~92
  227   145      > JMP                                                      ->114
        146    >   FE_FREE                                                  $75
  236   147    >   UNSET_CV                                                 !0
        148        UNSET_CV                                                 !10
        149        UNSET_CV                                                 !2
        150        UNSET_CV                                                 !3
        151        UNSET_CV                                                 !12
        152        UNSET_CV                                                 !11
  237   153        ECHO                                                     '%3Cbr%2F%3E'
  202   154      > JMP                                                      ->49
        155    >   FE_FREE                                                  $41
        156    > > JMP                                                      ->162
  241   157    >   IS_EQUAL                                                 !1, null
        158      > JMPZ                                                     ~93, ->161
        159    >   ECHO                                                     'NULL+SOAP+RESPONSE'
        160      > JMP                                                      ->162
  244   161    >   ECHO                                                     'No+issues%0D%0A'
  247   162    > > RETURN                                                   1

Function dumpdomnodelist:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 5, Position 2 = 14
Branch analysis from position: 5
2 jumps found. (Code = 78) Position 1 = 6, Position 2 = 14
Branch analysis from position: 6
1 jumps found. (Code = 42) Position 1 = 5
Branch analysis from position: 5
Branch analysis from position: 14
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 14
filename:       /in/jeSkS
function name:  dumpDOMnodeList
number of ops:  21
compiled vars:  !0 = $xml, !1 = $docTmp, !2 = $n
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    6     0  E >   RECV                                             !0      
    8     1        NEW                                              $3      'DOMDocument'
          2        DO_FCALL                                      0          
          3        ASSIGN                                                   !1, $3
    9     4      > FE_RESET_R                                       $6      !0, ->14
          5    > > FE_FETCH_R                                               $6, !2, ->14
          6    >   INIT_METHOD_CALL                                         !1, 'appendChild'
          7        INIT_METHOD_CALL                                         !1, 'importNode'
          8        SEND_VAR_EX                                              !2
          9        SEND_VAL_EX                                              <true>
         10        DO_FCALL                                      0  $7      
         11        SEND_VAR_NO_REF_EX                                       $7
         12        DO_FCALL                                      0          
         13      > JMP                                                      ->5
         14    >   FE_FREE                                                  $6
   11    15        INIT_FCALL                                               'print_r'
         16        INIT_METHOD_CALL                                         !1, 'saveHTML'
         17        DO_FCALL                                      0  $9      
         18        SEND_VAR                                                 $9
         19        DO_ICALL                                                 
   13    20      > RETURN                                                   null

End of function dumpdomnodelist

Class ipm:
Function __construct:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/jeSkS
function name:  __construct
number of ops:  39
compiled vars:  !0 = $soapService
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   29     0  E >   RECV                                             !0      
   31     1        ASSIGN_OBJ                                               'soapService'
          2        OP_DATA                                                  !0
   32     3        ASSIGN_OBJ                                               'soapVersion'
          4        OP_DATA                                                  '1.2'
   33     5        FETCH_OBJ_R                                      ~4      'soapService'
          6        CONCAT                                           ~5      'https%3A%2F%2Fwebservice.domain%2Fsoap%2F', ~4
          7        CONCAT                                           ~6      ~5, '.asmx'
          8        ASSIGN_OBJ                                               'soapLocation'
          9        OP_DATA                                                  ~6
   34    10        INIT_FCALL                                               'stream_context_create'
         11        SEND_VAL                                                 <array>
         12        DO_ICALL                                         $8      
         13        ASSIGN_OBJ                                               'soapContext'
         14        OP_DATA                                                  $8
   36    15        FETCH_OBJ_R                                      ~10     'soapLocation'
         16        INIT_ARRAY                                       ~11     ~10, 'location'
   37    17        ADD_ARRAY_ELEMENT                                ~11     'user', 'login'
   38    18        ADD_ARRAY_ELEMENT                                ~11     'password', 'password'
   39    19        FETCH_OBJ_R                                      ~12     'soapContext'
         20        ADD_ARRAY_ELEMENT                                ~11     ~12, 'stream_context'
   40    21        ADD_ARRAY_ELEMENT                                ~11     1, 'trace'
   41    22        ADD_ARRAY_ELEMENT                                ~11     1, 'keep_alive'
   42    23        FETCH_CONSTANT                                   ~13     'WSDL_CACHE_NONE'
         24        ADD_ARRAY_ELEMENT                                ~11     ~13, 'cache_wsdl'
   35    25        ASSIGN_OBJ                                               'soapParameters'
   42    26        OP_DATA                                                  ~11
   44    27        NEW                                              $15     'SoapClient'
         28        FETCH_OBJ_R                                      ~16     'soapService'
         29        CONCAT                                           ~17     '.%2F', ~16
         30        CONCAT                                           ~18     ~17, '.wsdl'
         31        SEND_VAL_EX                                              ~18
         32        CHECK_FUNC_ARG                                           
         33        FETCH_OBJ_FUNC_ARG                               $19     'soapParameters'
         34        SEND_FUNC_ARG                                            $19
         35        DO_FCALL                                      0          
         36        ASSIGN_OBJ                                               'soapClient'
         37        OP_DATA                                                  $15
   45    38      > RETURN                                                   null

End of function __construct

Function schemaopen:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 5, Position 2 = 14
Branch analysis from position: 5
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 14
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/jeSkS
function name:  schemaOpen
number of ops:  23
compiled vars:  !0 = $fn, !1 = $vars, !2 = $tmp
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   49     0  E >   RECV_INIT                                        !0      ''
          1        RECV                                             !1      
   51     2        ASSIGN                                                   !2, '%3C%3Fxml+version%3D%221.0%22+encoding%3D%22utf-8%22%3F%3E%3Csoap%3AEnvelope+xmlns%3Axsi%3D%22http%3A%2F%2Fwww.w3.org%2F2001%2FXMLSchema-instance%22+xmlns%3Axsd%3D%22http%3A%2F%2Fwww.w3.org%2F2001%2FXMLSchema%22+xmlns%3Asoap%3D%22http%3A%2F%2Fschemas.xmlsoap.org%2Fsoap%2Fenvelope%2F%22%3E'
   53     3        ISSET_ISEMPTY_CV                                         !1
          4      > JMPZ                                                     ~4, ->14
   55     5    >   CONCAT                                           ~5      !2, '%3Csoap%3ABody%3E%3C'
          6        CONCAT                                           ~6      ~5, !0
          7        CONCAT                                           ~7      ~6, '+xmlns%3D%22'
          8        INIT_METHOD_CALL                                         'schemaBase'
          9        DO_FCALL                                      0  $8      
         10        CONCAT                                           ~9      ~7, $8
         11        CONCAT                                           ~10     ~9, '%22+%2F%3E'
         12      > RETURN                                                   ~10
         13*       JMP                                                      ->22
   59    14    >   CONCAT                                           ~11     !2, '%3Csoap%3ABody%3E%3C'
         15        CONCAT                                           ~12     ~11, !0
         16        CONCAT                                           ~13     ~12, '+xmlns%3D%22'
         17        INIT_METHOD_CALL                                         'schemaBase'
         18        DO_FCALL                                      0  $14     
         19        CONCAT                                           ~15     ~13, $14
         20        CONCAT                                           ~16     ~15, '%22%3E'
         21      > RETURN                                                   ~16
   62    22*     > RETURN                                                   null

End of function schemaopen

Function schemaclose:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 4, Position 2 = 6
Branch analysis from position: 4
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 6
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/jeSkS
function name:  schemaClose
number of ops:  10
compiled vars:  !0 = $fn, !1 = $vars
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   63     0  E >   RECV_INIT                                        !0      ''
          1        RECV                                             !1      
   65     2        ISSET_ISEMPTY_CV                                         !1
          3      > JMPZ                                                     ~2, ->6
   67     4    > > RETURN                                                   '%3C%2Fsoap%3ABody%3E%3C%2Fsoap%3AEnvelope%3E'
          5*       JMP                                                      ->9
   71     6    >   CONCAT                                           ~3      '%3C%2F', !0
          7        CONCAT                                           ~4      ~3, '%3E%3C%2Fsoap%3ABody%3E%3C%2Fsoap%3AEnvelope%3E'
          8      > RETURN                                                   ~4
   74     9*     > RETURN                                                   null

End of function schemaclose

Function schemabase:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/jeSkS
function name:  schemaBase
number of ops:  4
compiled vars:  !0 = $fn
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   75     0  E >   RECV_INIT                                        !0      ''
   77     1        CONCAT                                           ~1      'http%3A%2F%2Fschemas.ipmonitor.com%2Fipm70%2F', !0
          2      > RETURN                                                   ~1
   78     3*     > RETURN                                                   null

End of function schemabase

Function dumpdomnodelist:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 5, Position 2 = 14
Branch analysis from position: 5
2 jumps found. (Code = 78) Position 1 = 6, Position 2 = 14
Branch analysis from position: 6
1 jumps found. (Code = 42) Position 1 = 5
Branch analysis from position: 5
Branch analysis from position: 14
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 14
filename:       /in/jeSkS
function name:  dumpDOMnodeList
number of ops:  26
compiled vars:  !0 = $xml, !1 = $docTmp, !2 = $n
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   79     0  E >   RECV                                             !0      
   81     1        NEW                                              $3      'DOMDocument'
          2        DO_FCALL                                      0          
          3        ASSIGN                                                   !1, $3
   82     4      > FE_RESET_R                                       $6      !0, ->14
          5    > > FE_FETCH_R                                               $6, !2, ->14
          6    >   INIT_METHOD_CALL                                         !1, 'appendChild'
          7        INIT_METHOD_CALL                                         !1, 'importNode'
          8        SEND_VAR_EX                                              !2
          9        SEND_VAL_EX                                              <true>
         10        DO_FCALL                                      0  $7      
         11        SEND_VAR_NO_REF_EX                                       $7
         12        DO_FCALL                                      0          
         13      > JMP                                                      ->5
         14    >   FE_FREE                                                  $6
   83    15        ECHO                                                     '%3Cpre%3E'
   84    16        INIT_FCALL                                               'print_r'
         17        INIT_FCALL                                               'htmlentities'
         18        INIT_METHOD_CALL                                         !1, 'saveHTML'
         19        DO_FCALL                                      0  $9      
         20        SEND_VAR                                                 $9
         21        DO_ICALL                                         $10     
         22        SEND_VAR                                                 $10
         23        DO_ICALL                                                 
   85    24        ECHO                                                     '%3C%2Fpre%3E'
   86    25      > RETURN                                                   null

End of function dumpdomnodelist

Function debugsoap:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/jeSkS
function name:  debugSoap
number of ops:  15
compiled vars:  none
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   89     0  E >   ECHO                                                     '%3Cpre%3E'
   90     1        FETCH_OBJ_R                                      ~0      'soapClient'
          2        INIT_METHOD_CALL                                         ~0, '__getLastRequestHeaders'
          3        DO_FCALL                                      0  $1      
          4        ECHO                                                     $1
   91     5        FETCH_OBJ_R                                      ~2      'soapClient'
          6        INIT_METHOD_CALL                                         ~2, '__getLastRequest'
          7        DO_FCALL                                      0  $3      
          8        ECHO                                                     $3
   92     9        FETCH_OBJ_R                                      ~4      'soapClient'
         10        INIT_METHOD_CALL                                         ~4, '__getLastResponseHeaders'
         11  

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
168.91 ms | 973 KiB | 22 Q