ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
nusoap_client Class Reference

[nu]soapclient higher level class for easy usage. More...

+ Inheritance diagram for nusoap_client:
+ Collaboration diagram for nusoap_client:

Public Member Functions

 __construct ($endpoint, $wsdl=false, $proxyhost=false, $proxyport=false, $proxyusername=false, $proxypassword=false, $timeout=0, $response_timeout=30)
 constructor More...
 
 call ($operation, $params=array(), $namespace='http://tempuri.org', $soapAction='', $headers=false, $rpcParams=null, $style='rpc', $use='encoded')
 calls method, returns PHP native type More...
 
 checkWSDL ()
 check WSDL passed as an instance or pulled from an endpoint More...
 
 loadWSDL ()
 instantiate wsdl object and parse wsdl file More...
 
 getOperationData ($operation)
 get available data pertaining to an operation More...
 
 send ($msg, $soapaction='', $timeout=0, $response_timeout=30)
 send the SOAP message More...
 
 parseResponse ($headers, $data)
 processes SOAP message returned from server More...
 
 setCurlOption ($option, $value)
 sets user-specified cURL options More...
 
 setEndpoint ($endpoint)
 sets the SOAP endpoint, which can override WSDL More...
 
 setHeaders ($headers)
 set the SOAP headers More...
 
 getHeaders ()
 get the SOAP response headers (namespace resolution incomplete) More...
 
 getHeader ()
 get the SOAP response Header (parsed) More...
 
 setHTTPProxy ($proxyhost, $proxyport, $proxyusername='', $proxypassword='')
 set proxy info here More...
 
 setCredentials ($username, $password, $authtype='basic', $certRequest=array())
 if authenticating, set user credentials here More...
 
 setHTTPEncoding ($enc='gzip, deflate')
 use HTTP encoding More...
 
 setUseCURL ($use)
 Set whether to try to use cURL connections if possible. More...
 
 useHTTPPersistentConnection ()
 use HTTP persistent connections if possible More...
 
 getDefaultRpcParams ()
 gets the default RPC parameter setting. More...
 
 setDefaultRpcParams ($rpcParams)
 sets the default RPC parameter setting. More...
 
 getProxy ()
 dynamically creates an instance of a proxy class, allowing user to directly call methods from wsdl More...
 
 _getProxyClassCode ($r)
 dynamically creates proxy class code More...
 
 getProxyClassCode ()
 dynamically creates proxy class code More...
 
 getHTTPBody ($soapmsg)
 gets the HTTP body for the current request. More...
 
 getHTTPContentType ()
 gets the HTTP content type for the current request. More...
 
 getHTTPContentTypeCharset ()
 gets the HTTP content type charset for the current request. More...
 
 decodeUTF8 ($bool)
 
 setCookie ($name, $value)
 adds a new Cookie into $this->cookies array More...
 
 getCookies ()
 gets all Cookies More...
 
 checkCookies ()
 checks all Cookies and delete those which are expired More...
 
 UpdateCookies ($cookies)
 updates the current cookies with a new set More...
 
- Public Member Functions inherited from nusoap_base
 debug ($string)
 adds debug data to the class level debug string More...
 
 expandEntities ($val)
 expands entities, e.g. More...
 
 getError ()
 returns error string if present More...
 
 setError ($str)
 sets error string More...
 
 isArraySimpleOrStruct ($val)
 detect if array is a simple array or a struct (associative array) More...
 
 serialize_val ($val, $name=false, $type=false, $name_ns=false, $type_ns=false, $attributes=false, $use='encoded')
 serializes PHP values in accordance w/ section 5. More...
 
 serializeEnvelope ($body, $headers=false, $namespaces=array(), $style='rpc', $use='encoded')
 serialize message More...
 
 formatDump ($str)
 
 contractQname ($qname)
 contracts a qualified name More...
 
 expandQname ($qname)
 expands a qualified name More...
 
 getLocalPart ($str)
 returns the local part of a prefixed string returns the original string, if not prefixed More...
 
 getPrefix ($str)
 returns the prefix part of a prefixed string returns false, if not prefixed More...
 
 getNamespaceFromPrefix ($prefix)
 pass it a prefix, it returns a namespace returns false if no namespace registered with the given prefix More...
 
 getPrefixFromNamespace ($ns)
 returns the prefix for a given namespace (or prefix) or false if no prefixes registered for the given namespace More...
 
 varDump ($data)
 
 __construct ()
 constructor More...
 
 getGlobalDebugLevel ()
 gets the global debug level, which applies to future instances More...
 
 setGlobalDebugLevel ($level)
 sets the global debug level, which applies to future instances More...
 
 getDebugLevel ()
 gets the debug level for this instance More...
 
 setDebugLevel ($level)
 sets the debug level for this instance More...
 
 debug ($string)
 adds debug data to the instance debug string with formatting More...
 
 appendDebug ($string)
 adds debug data to the instance debug string without formatting More...
 
 clearDebug ()
 clears the current debug data for this instance More...
 
getDebug ()
 gets the current debug data for this instance More...
 
getDebugAsXMLComment ()
 gets the current debug data for this instance as an XML comment this may change the contents of the debug data More...
 
 expandEntities ($val)
 expands entities, e.g. More...
 
 getError ()
 returns error string if present More...
 
 setError ($str)
 sets error string More...
 
 isArraySimpleOrStruct ($val)
 detect if array is a simple array or a struct (associative array) More...
 
 serialize_val ($val, $name=false, $type=false, $name_ns=false, $type_ns=false, $attributes=false, $use='encoded', $soapval=false)
 serializes PHP values in accordance w/ section 5. More...
 
 serializeEnvelope ($body, $headers=false, $namespaces=array(), $style='rpc', $use='encoded', $encodingStyle='http://schemas.xmlsoap.org/soap/encoding/')
 serializes a message More...
 
 formatDump ($str)
 formats a string to be inserted into an HTML stream More...
 
 contractQname ($qname)
 contracts (changes namespace to prefix) a qualified name More...
 
 expandQname ($qname)
 expands (changes prefix to namespace) a qualified name More...
 
 getLocalPart ($str)
 returns the local part of a prefixed string returns the original string, if not prefixed More...
 
 getPrefix ($str)
 returns the prefix part of a prefixed string returns false, if not prefixed More...
 
 getNamespaceFromPrefix ($prefix)
 pass it a prefix, it returns a namespace More...
 
 getPrefixFromNamespace ($ns)
 returns the prefix for a given namespace (or prefix) or false if no prefixes registered for the given namespace More...
 
 getmicrotime ()
 returns the time in ODBC canonical form with microseconds More...
 
 varDump ($data)
 Returns a string with the output of var_dump. More...
 
 __toString ()
 represents the object as a string More...
 

Data Fields

 $username = ''
 
 $password = ''
 
 $authtype = ''
 
 $certRequest = array()
 
 $requestHeaders = false
 
 $responseHeaders = ''
 
 $responseHeader = NULL
 
 $document = ''
 
 $endpoint
 
 $forceEndpoint = ''
 
 $proxyhost = ''
 
 $proxyport = ''
 
 $proxyusername = ''
 
 $proxypassword = ''
 
 $xml_encoding = ''
 
 $http_encoding = false
 
 $timeout = 0
 
 $response_timeout = 30
 
 $endpointType = ''
 
 $persistentConnection = false
 
 $defaultRpcParams = false
 
 $request = ''
 
 $response = ''
 
 $responseData = ''
 
 $cookies = array()
 
 $decode_utf8 = true
 
 $operations = array()
 
 $curl_options = array()
 
 $bindingType = ''
 
 $use_curl = false
 
 $fault
 
 $faultcode
 
 $faultstring
 
 $faultdetail
 
- Data Fields inherited from nusoap_base
 $title = 'NuSOAP'
 
 $version = '0.6.7'
 
 $revision = '$Revision$'
 
 $error_str = false
 
 $debug_str = ''
 
 $charencoding = true
 
 $XMLSchemaVersion = 'http://www.w3.org/2001/XMLSchema'
 
 $soap_defencoding = 'UTF-8'
 
 $namespaces
 
 $usedNamespaces = array()
 
 $typemap
 
 $xmlEntities
 
 $debugLevel
 

Detailed Description

[nu]soapclient higher level class for easy usage.

usage:

// instantiate client with server info $soapclient = new nusoap_client( string path [ ,mixed wsdl] );

// call method, get results echo $soapclient->call( string methodname [ ,array parameters] );

// bye bye client unset($soapclient);

Author
Dietrich Ayala dietr.nosp@m.ich@.nosp@m.ganx4.nosp@m..com
Scott Nichol snich.nosp@m.ol@u.nosp@m.sers..nosp@m.sour.nosp@m.cefor.nosp@m.ge.n.nosp@m.et
Version
$Id$ public

Definition at line 7072 of file nusoap.php.

Constructor & Destructor Documentation

◆ __construct()

nusoap_client::__construct (   $endpoint,
  $wsdl = false,
  $proxyhost = false,
  $proxyport = false,
  $proxyusername = false,
  $proxypassword = false,
  $timeout = 0,
  $response_timeout = 30 
)

constructor

Parameters
mixed$endpointSOAP server or WSDL URL (string), or wsdl instance (object)
bool$wsdloptional, set to true if using WSDL
int$portNameoptional portName in WSDL document
string$proxyhost
string$proxyport
string$proxyusername
string$proxypassword
integer$timeoutset the connection timeout
integer$response_timeoutset the response timeout public

Definition at line 7143 of file nusoap.php.

References $endpoint, nusoap_base\appendDebug(), nusoap_base\debug(), nusoap_base\varDump(), and wsdl\wsdl().

7143  {
7144  parent::__construct();
7145  $this->endpoint = $endpoint;
7146  $this->proxyhost = $proxyhost;
7147  $this->proxyport = $proxyport;
7148  $this->proxyusername = $proxyusername;
7149  $this->proxypassword = $proxypassword;
7150  $this->timeout = $timeout;
7151  $this->response_timeout = $response_timeout;
7152 
7153  $this->debug("ctor wsdl=$wsdl timeout=$timeout response_timeout=$response_timeout");
7154  $this->appendDebug('endpoint=' . $this->varDump($endpoint));
7155 
7156  // make values
7157  if($wsdl){
7158  if (is_object($endpoint) && (get_class($endpoint) == 'wsdl')) {
7159  $this->wsdl = $endpoint;
7160  $this->endpoint = $this->wsdl->wsdl;
7161  $this->wsdlFile = $this->endpoint;
7162  $this->debug('existing wsdl instance created from ' . $this->endpoint);
7163  $this->checkWSDL();
7164  } else {
7165  $this->wsdlFile = $this->endpoint;
7166  $this->wsdl = null;
7167  $this->debug('will use lazy evaluation of wsdl from ' . $this->endpoint);
7168  }
7169  $this->endpointType = 'wsdl';
7170  } else {
7171  $this->debug("instantiate SOAP with endpoint at $endpoint");
7172  $this->endpointType = 'soap';
7173  }
7174  }
appendDebug($string)
adds debug data to the instance debug string without formatting
Definition: nusoap.php:294
parses a WSDL file, allows access to it's data, other utility methods
Definition: nusoap.php:3133
checkWSDL()
check WSDL passed as an instance or pulled from an endpoint
Definition: nusoap.php:7383
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
wsdl($wsdl='', $proxyhost=false, $proxyport=false, $proxyusername=false, $proxypassword=false, $timeout=0, $response_timeout=30)
constructor
Definition: nusoap.php:3181
varDump($data)
Definition: nusoap.php:567
+ Here is the call graph for this function:

Member Function Documentation

◆ _getProxyClassCode()

nusoap_client::_getProxyClassCode (   $r)

dynamically creates proxy class code

Returns
string PHP/NuSOAP code for the proxy class private

Definition at line 7781 of file nusoap.php.

References $name, $type, nusoap_base\appendDebug(), nusoap_base\debug(), nusoap_base\getError(), nusoap_base\setError(), and nusoap_base\varDump().

7781  {
7782  $this->debug("in getProxy endpointType=$this->endpointType");
7783  $this->appendDebug("wsdl=" . $this->varDump($this->wsdl));
7784  if ($this->endpointType != 'wsdl') {
7785  $evalStr = 'A proxy can only be created for a WSDL client';
7786  $this->setError($evalStr);
7787  $evalStr = "echo \"$evalStr\";";
7788  return $evalStr;
7789  }
7790  if ($this->endpointType == 'wsdl' && is_null($this->wsdl)) {
7791  $this->loadWSDL();
7792  if ($this->getError()) {
7793  return "echo \"" . $this->getError() . "\";";
7794  }
7795  }
7796  $evalStr = '';
7797  foreach ($this->operations as $operation => $opData) {
7798  if ($operation != '') {
7799  // create param string and param comment string
7800  if (sizeof($opData['input']['parts']) > 0) {
7801  $paramStr = '';
7802  $paramArrayStr = '';
7803  $paramCommentStr = '';
7804  foreach ($opData['input']['parts'] as $name => $type) {
7805  $paramStr .= "\$$name, ";
7806  $paramArrayStr .= "'$name' => \$$name, ";
7807  $paramCommentStr .= "$type \$$name, ";
7808  }
7809  $paramStr = substr($paramStr, 0, strlen($paramStr)-2);
7810  $paramArrayStr = substr($paramArrayStr, 0, strlen($paramArrayStr)-2);
7811  $paramCommentStr = substr($paramCommentStr, 0, strlen($paramCommentStr)-2);
7812  } else {
7813  $paramStr = '';
7814  $paramArrayStr = '';
7815  $paramCommentStr = 'void';
7816  }
7817  $opData['namespace'] = !isset($opData['namespace']) ? 'http://testuri.com' : $opData['namespace'];
7818  $evalStr .= "// $paramCommentStr
7819  function " . str_replace('.', '__', $operation) . "($paramStr) {
7820  \$params = array($paramArrayStr);
7821  return \$this->call('$operation', \$params, '".$opData['namespace']."', '".(isset($opData['soapAction']) ? $opData['soapAction'] : '')."');
7822  }
7823  ";
7824  unset($paramStr);
7825  unset($paramCommentStr);
7826  }
7827  }
7828  $evalStr = 'class nusoap_proxy_'.$r.' extends nusoap_client {
7829  '.$evalStr.'
7830 }';
7831  return $evalStr;
7832  }
appendDebug($string)
adds debug data to the instance debug string without formatting
Definition: nusoap.php:294
setError($str)
sets error string
Definition: nusoap.php:184
parses a WSDL file, allows access to it's data, other utility methods
Definition: nusoap.php:3133
$type
getError()
returns error string if present
Definition: nusoap.php:171
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
varDump($data)
Definition: nusoap.php:567
loadWSDL()
instantiate wsdl object and parse wsdl file
Definition: nusoap.php:7409
+ Here is the call graph for this function:

◆ call()

nusoap_client::call (   $operation,
  $params = array(),
  $namespace = 'http://tempuri.org',
  $soapAction = '',
  $headers = false,
  $rpcParams = null,
  $style = 'rpc',
  $use = 'encoded' 
)

calls method, returns PHP native type

Parameters
string$operationSOAP server URL or path
mixed$paramsAn array, associative or simple, of the parameters for the method call, or a string that is the XML for the call. For rpc style, this call will wrap the XML in a tag named after the method, as well as the SOAP Envelope and Body. For document style, this will only wrap with the Envelope and Body. IMPORTANT: when using an array with document style, in which case there is really one parameter, the root of the fragment used in the call, which encloses what programmers normally think of parameters. A parameter array must include the wrapper.
string$namespaceoptional method namespace (WSDL can override)
string$soapActionoptional SOAPAction value (WSDL can override)
mixed$headersoptional string of XML with SOAP header content, or array of soapval objects for SOAP headers, or associative array
boolean$rpcParamsoptional (no longer used)
string$styleoptional (rpc|document) the style to use when serializing parameters (WSDL can override)
string$useoptional (encoded|literal) the use when serializing parameters (WSDL can override)
Returns
mixed response from SOAP call public

Definition at line 7201 of file nusoap.php.

References $namespace, PHPMailer\PHPMailer\$params, $style, nusoap_base\appendDebug(), nusoap_base\clearDebug(), nusoap_base\debug(), nusoap_base\getDebug(), nusoap_base\getError(), nusoap_base\getPrefixFromNamespace(), nusoap_base\serialize_val(), nusoap_base\serializeEnvelope(), wsdl\serializeRPCParameters(), nusoap_base\setError(), and nusoap_base\varDump().

7201  ://tempuri.org',$soapAction='',$headers=false,$rpcParams=null,$style='rpc',$use='encoded'){
7202  $this->operation = $operation;
7203  $this->fault = false;
7204  $this->setError('');
7205  $this->request = '';
7206  $this->response = '';
7207  $this->responseData = '';
7208  $this->faultstring = '';
7209  $this->faultcode = '';
7210  $this->opData = array();
7211 
7212  $this->debug("call: operation=$operation, namespace=$namespace, soapAction=$soapAction, rpcParams=$rpcParams, style=$style, use=$use, endpointType=$this->endpointType");
7213  $this->appendDebug('params=' . $this->varDump($params));
7214  $this->appendDebug('headers=' . $this->varDump($headers));
7215  if ($headers) {
7216  $this->requestHeaders = $headers;
7217  }
7218  if ($this->endpointType == 'wsdl' && is_null($this->wsdl)) {
7219  $this->loadWSDL();
7220  if ($this->getError())
7221  return false;
7222  }
7223  // serialize parameters
7224  if($this->endpointType == 'wsdl' && $opData = $this->getOperationData($operation)){
7225  // use WSDL for operation
7226  $this->opData = $opData;
7227  $this->debug("found operation");
7228  $this->appendDebug('opData=' . $this->varDump($opData));
7229  if (isset($opData['soapAction'])) {
7230  $soapAction = $opData['soapAction'];
7231  }
7232  if (! $this->forceEndpoint) {
7233  $this->endpoint = $opData['endpoint'];
7234  } else {
7235  $this->endpoint = $this->forceEndpoint;
7236  }
7237  $namespace = isset($opData['input']['namespace']) ? $opData['input']['namespace'] : $namespace;
7238  $style = $opData['style'];
7239  $use = $opData['input']['use'];
7240  // add ns to ns array
7241  if($namespace != '' && !isset($this->wsdl->namespaces[$namespace])){
7242  $nsPrefix = 'ns' . rand(1000, 9999);
7243  $this->wsdl->namespaces[$nsPrefix] = $namespace;
7244  }
7245  $nsPrefix = $this->wsdl->getPrefixFromNamespace($namespace);
7246  // serialize payload
7247  if (is_string($params)) {
7248  $this->debug("serializing param string for WSDL operation $operation");
7249  $payload = $params;
7250  } elseif (is_array($params)) {
7251  $this->debug("serializing param array for WSDL operation $operation");
7252  $payload = $this->wsdl->serializeRPCParameters($operation,'input',$params,$this->bindingType);
7253  } else {
7254  $this->debug('params must be array or string');
7255  $this->setError('params must be array or string');
7256  return false;
7257  }
7258  $usedNamespaces = $this->wsdl->usedNamespaces;
7259  if (isset($opData['input']['encodingStyle'])) {
7260  $encodingStyle = $opData['input']['encodingStyle'];
7261  } else {
7262  $encodingStyle = '';
7263  }
7264  $this->appendDebug($this->wsdl->getDebug());
7265  $this->wsdl->clearDebug();
7266  if ($errstr = $this->wsdl->getError()) {
7267  $this->debug('got wsdl error: '.$errstr);
7268  $this->setError('wsdl error: '.$errstr);
7269  return false;
7270  }
7271  } elseif($this->endpointType == 'wsdl') {
7272  // operation not in WSDL
7273  $this->appendDebug($this->wsdl->getDebug());
7274  $this->wsdl->clearDebug();
7275  $this->setError( 'operation '.$operation.' not present.');
7276  $this->debug("operation '$operation' not present.");
7277  return false;
7278  } else {
7279  // no WSDL
7280  //$this->namespaces['ns1'] = $namespace;
7281  $nsPrefix = 'ns' . rand(1000, 9999);
7282  // serialize
7283  $payload = '';
7284  if (is_string($params)) {
7285  $this->debug("serializing param string for operation $operation");
7286  $payload = $params;
7287  } elseif (is_array($params)) {
7288  $this->debug("serializing param array for operation $operation");
7289  foreach($params as $k => $v){
7290  $payload .= $this->serialize_val($v,$k,false,false,false,false,$use);
7291  }
7292  } else {
7293  $this->debug('params must be array or string');
7294  $this->setError('params must be array or string');
7295  return false;
7296  }
7297  $usedNamespaces = array();
7298  if ($use == 'encoded') {
7299  $encodingStyle = 'http://schemas.xmlsoap.org/soap/encoding/';
7300  } else {
7301  $encodingStyle = '';
7302  }
7303  }
7304  // wrap RPC calls with method element
7305  if ($style == 'rpc') {
7306  if ($use == 'literal') {
7307  $this->debug("wrapping RPC request with literal method element");
7308  if ($namespace) {
7309  // http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html R2735 says rpc/literal accessor elements should not be in a namespace
7310  $payload = "<$nsPrefix:$operation xmlns:$nsPrefix=\"$namespace\">" .
7311  $payload .
7312  "</$nsPrefix:$operation>";
7313  } else {
7314  $payload = "<$operation>" . $payload . "</$operation>";
7315  }
7316  } else {
7317  $this->debug("wrapping RPC request with encoded method element");
7318  if ($namespace) {
7319  $payload = "<$nsPrefix:$operation xmlns:$nsPrefix=\"$namespace\">" .
7320  $payload .
7321  "</$nsPrefix:$operation>";
7322  } else {
7323  $payload = "<$operation>" .
7324  $payload .
7325  "</$operation>";
7326  }
7327  }
7328  }
7329  // serialize envelope
7330  $soapmsg = $this->serializeEnvelope($payload,$this->requestHeaders,$usedNamespaces,$style,$use,$encodingStyle);
7331  $this->debug("endpoint=$this->endpoint, soapAction=$soapAction, namespace=$namespace, style=$style, use=$use, encodingStyle=$encodingStyle");
7332  $this->debug('SOAP message length=' . strlen($soapmsg) . ' contents (max 1000 bytes)=' . substr($soapmsg, 0, 1000));
7333  // send
7334  $return = $this->send($this->getHTTPBody($soapmsg),$soapAction,$this->timeout,$this->response_timeout);
7335  if($errstr = $this->getError()){
7336  $this->debug('Error: '.$errstr);
7337  return false;
7338  } else {
7339  $this->return = $return;
7340  $this->debug('sent message successfully and got a(n) '.gettype($return));
7341  $this->appendDebug('return=' . $this->varDump($return));
7342 
7343  // fault?
7344  if(is_array($return) && isset($return['faultcode'])){
7345  $this->debug('got fault');
7346  $this->setError($return['faultcode'].': '.$return['faultstring']);
7347  $this->fault = true;
7348  foreach($return as $k => $v){
7349  $this->$k = $v;
7350  $this->debug("$k = $v<br>");
7351  }
7352  return $return;
7353  } elseif ($style == 'document') {
7354  // NOTE: if the response is defined to have multiple parts (i.e. unwrapped),
7355  // we are only going to return the first part here...sorry about that
7356  return $return;
7357  } else {
7358  // array of return values
7359  if(is_array($return)){
7360  // multiple 'out' parameters, which we return wrapped up
7361  // in the array
7362  if(sizeof($return) > 1){
7363  return $return;
7364  }
7365  // single 'out' parameter (normally the return value)
7366  $return = array_shift($return);
7367  $this->debug('return shifted value: ');
7368  $this->appendDebug($this->varDump($return));
7369  return $return;
7370  // nothing returned (ie, echoVoid)
7371  } else {
7372  return "";
7373  }
7374  }
7375  }
7376  }
if($err=$client->getError()) $namespace
appendDebug($string)
adds debug data to the instance debug string without formatting
Definition: nusoap.php:294
serializeEnvelope($body, $headers=false, $namespaces=array(), $style='rpc', $use='encoded')
serialize message
Definition: nusoap.php:417
setError($str)
sets error string
Definition: nusoap.php:184
$style
Definition: example_012.php:70
& getDebug()
gets the current debug data for this instance
Definition: nusoap.php:319
parses a WSDL file, allows access to it&#39;s data, other utility methods
Definition: nusoap.php:3133
send($msg, $soapaction='', $timeout=0, $response_timeout=30)
send the SOAP message
Definition: nusoap.php:7450
getError()
returns error string if present
Definition: nusoap.php:171
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
getPrefixFromNamespace($ns)
returns the prefix for a given namespace (or prefix) or false if no prefixes registered for the given...
Definition: nusoap.php:557
serialize_val($val, $name=false, $type=false, $name_ns=false, $type_ns=false, $attributes=false, $use='encoded')
serializes PHP values in accordance w/ section 5.
Definition: nusoap.php:212
getOperationData($operation)
get available data pertaining to an operation
Definition: nusoap.php:7424
getHTTPBody($soapmsg)
gets the HTTP body for the current request.
Definition: nusoap.php:7852
varDump($data)
Definition: nusoap.php:567
serializeRPCParameters($operation, $direction, $parameters)
serialize a PHP value according to a WSDL message definition
Definition: nusoap.php:3870
loadWSDL()
instantiate wsdl object and parse wsdl file
Definition: nusoap.php:7409
clearDebug()
clears the current debug data for this instance
Definition: nusoap.php:307
+ Here is the call graph for this function:

◆ checkCookies()

nusoap_client::checkCookies ( )

checks all Cookies and delete those which are expired

Returns
boolean always return true private

Definition at line 7924 of file nusoap.php.

References nusoap_base\debug().

7924  {
7925  if (sizeof($this->cookies) == 0) {
7926  return true;
7927  }
7928  $this->debug('checkCookie: check ' . sizeof($this->cookies) . ' cookies');
7929  $curr_cookies = $this->cookies;
7930  $this->cookies = array();
7931  foreach ($curr_cookies as $cookie) {
7932  if (! is_array($cookie)) {
7933  $this->debug('Remove cookie that is not an array');
7934  continue;
7935  }
7936  if ((isset($cookie['expires'])) && (! empty($cookie['expires']))) {
7937  if (strtotime($cookie['expires']) > time()) {
7938  $this->cookies[] = $cookie;
7939  } else {
7940  $this->debug('Remove expired cookie ' . $cookie['name']);
7941  }
7942  } else {
7943  $this->cookies[] = $cookie;
7944  }
7945  }
7946  $this->debug('checkCookie: '.sizeof($this->cookies).' cookies left in array');
7947  return true;
7948  }
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
+ Here is the call graph for this function:

◆ checkWSDL()

nusoap_client::checkWSDL ( )

check WSDL passed as an instance or pulled from an endpoint

private

Definition at line 7383 of file nusoap.php.

References nusoap_base\appendDebug(), nusoap_base\clearDebug(), nusoap_base\debug(), nusoap_base\getDebug(), nusoap_base\getError(), wsdl\getOperations(), and nusoap_base\setError().

7383  {
7384  $this->appendDebug($this->wsdl->getDebug());
7385  $this->wsdl->clearDebug();
7386  $this->debug('checkWSDL');
7387  // catch errors
7388  if ($errstr = $this->wsdl->getError()) {
7389  $this->debug('got wsdl error: '.$errstr);
7390  $this->setError('wsdl error: '.$errstr);
7391  } elseif ($this->operations = $this->wsdl->getOperations('soap')) {
7392  $this->bindingType = 'soap';
7393  $this->debug('got '.count($this->operations).' operations from wsdl '.$this->wsdlFile.' for binding type '.$this->bindingType);
7394  } elseif ($this->operations = $this->wsdl->getOperations('soap12')) {
7395  $this->bindingType = 'soap12';
7396  $this->debug('got '.count($this->operations).' operations from wsdl '.$this->wsdlFile.' for binding type '.$this->bindingType);
7397  $this->debug('**************** WARNING: SOAP 1.2 BINDING *****************');
7398  } else {
7399  $this->debug('getOperations returned false');
7400  $this->setError('no operations defined in the WSDL document!');
7401  }
7402  }
appendDebug($string)
adds debug data to the instance debug string without formatting
Definition: nusoap.php:294
setError($str)
sets error string
Definition: nusoap.php:184
& getDebug()
gets the current debug data for this instance
Definition: nusoap.php:319
parses a WSDL file, allows access to it&#39;s data, other utility methods
Definition: nusoap.php:3133
getError()
returns error string if present
Definition: nusoap.php:171
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
getOperations($bindingType='soap')
returns an assoc array of operation names => operation data
Definition: nusoap.php:3649
clearDebug()
clears the current debug data for this instance
Definition: nusoap.php:307
+ Here is the call graph for this function:

◆ decodeUTF8()

nusoap_client::decodeUTF8 (   $bool)

Definition at line 7887 of file nusoap.php.

7887  {
7888  $this->decode_utf8 = $bool;
7889  return true;
7890  }

◆ getCookies()

nusoap_client::getCookies ( )

gets all Cookies

Returns
array with all internal cookies public

Definition at line 7914 of file nusoap.php.

7914  {
7915  return $this->cookies;
7916  }

◆ getDefaultRpcParams()

nusoap_client::getDefaultRpcParams ( )

gets the default RPC parameter setting.

If true, default is that call params are like RPC even for document style. Each call() can override this value.

This is no longer used.

Returns
boolean public
Deprecated:

Definition at line 7707 of file nusoap.php.

7707  {
7708  return $this->defaultRpcParams;
7709  }

◆ getHeader()

nusoap_client::getHeader ( )

get the SOAP response Header (parsed)

Returns
mixed public

Definition at line 7626 of file nusoap.php.

7626  {
7627  return $this->responseHeader;
7628  }

◆ getHeaders()

nusoap_client::getHeaders ( )

get the SOAP response headers (namespace resolution incomplete)

Returns
string public

Definition at line 7616 of file nusoap.php.

7616  {
7617  return $this->responseHeaders;
7618  }

◆ getHTTPBody()

nusoap_client::getHTTPBody (   $soapmsg)

gets the HTTP body for the current request.

Parameters
string$soapmsgThe SOAP payload
Returns
string The HTTP body, which includes the SOAP payload private

Definition at line 7852 of file nusoap.php.

7852  {
7853  return $soapmsg;
7854  }

◆ getHTTPContentType()

nusoap_client::getHTTPContentType ( )

gets the HTTP content type for the current request.

Note: getHTTPBody must be called before this.

Returns
string the HTTP content type for the current request. private

Definition at line 7864 of file nusoap.php.

7864  {
7865  return 'text/xml';
7866  }

◆ getHTTPContentTypeCharset()

nusoap_client::getHTTPContentTypeCharset ( )

gets the HTTP content type charset for the current request.

returns false for non-text content types.

Note: getHTTPBody must be called before this.

Returns
string the HTTP content type charset for the current request. private

Definition at line 7877 of file nusoap.php.

References nusoap_base\$soap_defencoding.

7877  {
7878  return $this->soap_defencoding;
7879  }
$soap_defencoding
Definition: nusoap.php:86

◆ getOperationData()

nusoap_client::getOperationData (   $operation)

get available data pertaining to an operation

Parameters
string$operationoperation name
Returns
array array of data pertaining to the operation public

Definition at line 7424 of file nusoap.php.

References nusoap_base\debug(), and nusoap_base\getError().

7424  {
7425  if ($this->endpointType == 'wsdl' && is_null($this->wsdl)) {
7426  $this->loadWSDL();
7427  if ($this->getError())
7428  return false;
7429  }
7430  if(isset($this->operations[$operation])){
7431  return $this->operations[$operation];
7432  }
7433  $this->debug("No data for operation: $operation");
7434  }
parses a WSDL file, allows access to it&#39;s data, other utility methods
Definition: nusoap.php:3133
getError()
returns error string if present
Definition: nusoap.php:171
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
loadWSDL()
instantiate wsdl object and parse wsdl file
Definition: nusoap.php:7409
+ Here is the call graph for this function:

◆ getProxy()

nusoap_client::getProxy ( )

dynamically creates an instance of a proxy class, allowing user to directly call methods from wsdl

Returns
object soap_proxy object public

Definition at line 7733 of file nusoap.php.

References $endpoint, $password, $r, nusoap_base\$soap_defencoding, nusoap_base\debug(), and nusoap_base\getError().

7733  {
7734  $r = rand();
7735  $evalStr = $this->_getProxyClassCode($r);
7736  //$this->debug("proxy class: $evalStr");
7737  if ($this->getError()) {
7738  $this->debug("Error from _getProxyClassCode, so return NULL");
7739  return null;
7740  }
7741  // eval the class
7742  eval($evalStr);
7743  // instantiate proxy object
7744  eval("\$proxy = new nusoap_proxy_$r('');");
7745  // transfer current wsdl data to the proxy thereby avoiding parsing the wsdl twice
7746  $proxy->endpointType = 'wsdl';
7747  $proxy->wsdlFile = $this->wsdlFile;
7748  $proxy->wsdl = $this->wsdl;
7749  $proxy->operations = $this->operations;
7750  $proxy->defaultRpcParams = $this->defaultRpcParams;
7751  // transfer other state
7752  $proxy->soap_defencoding = $this->soap_defencoding;
7753  $proxy->username = $this->username;
7754  $proxy->password = $this->password;
7755  $proxy->authtype = $this->authtype;
7756  $proxy->certRequest = $this->certRequest;
7757  $proxy->requestHeaders = $this->requestHeaders;
7758  $proxy->endpoint = $this->endpoint;
7759  $proxy->forceEndpoint = $this->forceEndpoint;
7760  $proxy->proxyhost = $this->proxyhost;
7761  $proxy->proxyport = $this->proxyport;
7762  $proxy->proxyusername = $this->proxyusername;
7763  $proxy->proxypassword = $this->proxypassword;
7764  $proxy->http_encoding = $this->http_encoding;
7765  $proxy->timeout = $this->timeout;
7766  $proxy->response_timeout = $this->response_timeout;
7767  $proxy->persistentConnection = &$this->persistentConnection;
7768  $proxy->decode_utf8 = $this->decode_utf8;
7769  $proxy->curl_options = $this->curl_options;
7770  $proxy->bindingType = $this->bindingType;
7771  $proxy->use_curl = $this->use_curl;
7772  return $proxy;
7773  }
getError()
returns error string if present
Definition: nusoap.php:171
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
$r
Definition: example_031.php:79
_getProxyClassCode($r)
dynamically creates proxy class code
Definition: nusoap.php:7781
$soap_defencoding
Definition: nusoap.php:86
+ Here is the call graph for this function:

◆ getProxyClassCode()

nusoap_client::getProxyClassCode ( )

dynamically creates proxy class code

Returns
string PHP/NuSOAP code for the proxy class public

Definition at line 7840 of file nusoap.php.

References $r.

7840  {
7841  $r = rand();
7842  return $this->_getProxyClassCode($r);
7843  }
$r
Definition: example_031.php:79
_getProxyClassCode($r)
dynamically creates proxy class code
Definition: nusoap.php:7781

◆ loadWSDL()

nusoap_client::loadWSDL ( )

instantiate wsdl object and parse wsdl file

public

Definition at line 7409 of file nusoap.php.

References nusoap_base\debug(), wsdl\fetchWSDL(), and wsdl\setCredentials().

7409  {
7410  $this->debug('instantiating wsdl class with doc: '.$this->wsdlFile);
7411  $this->wsdl = new wsdl('',$this->proxyhost,$this->proxyport,$this->proxyusername,$this->proxypassword,$this->timeout,$this->response_timeout,$this->curl_options,$this->use_curl);
7412  $this->wsdl->setCredentials($this->username, $this->password, $this->authtype, $this->certRequest);
7413  $this->wsdl->fetchWSDL($this->wsdlFile);
7414  $this->checkWSDL();
7415  }
parses a WSDL file, allows access to it&#39;s data, other utility methods
Definition: nusoap.php:3133
checkWSDL()
check WSDL passed as an instance or pulled from an endpoint
Definition: nusoap.php:7383
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
setCredentials($username, $password, $authtype='basic', $certRequest=array())
if authenticating, set user credentials here
Definition: nusoap.php:5058
fetchWSDL($wsdl)
fetches the WSDL document and parses it
Definition: nusoap.php:4588
+ Here is the call graph for this function:

◆ parseResponse()

nusoap_client::parseResponse (   $headers,
  $data 
)

processes SOAP message returned from server

Parameters
array$headersThe HTTP headers
string$dataunprocessed response data from server
Returns
mixed value of the message, decoded into a PHP type private

Definition at line 7529 of file nusoap.php.

References $data, nusoap_base\appendDebug(), nusoap_base\debug(), nusoap_base\setError(), and nusoap_base\varDump().

7529  {
7530  $this->debug('Entering parseResponse() for data of length ' . strlen($data) . ' headers:');
7531  $this->appendDebug($this->varDump($headers));
7532  if (!strstr($headers['content-type'], 'text/xml')) {
7533  $this->setError('Response not of type text/xml: ' . $headers['content-type']);
7534  return false;
7535  }
7536  if (strpos($headers['content-type'], '=')) {
7537  $enc = str_replace('"', '', substr(strstr($headers["content-type"], '='), 1));
7538  $this->debug('Got response encoding: ' . $enc);
7539  if(preg_match('/^(ISO-8859-1|US-ASCII|UTF-8)$/i',$enc)){
7540  $this->xml_encoding = strtoupper($enc);
7541  } else {
7542  $this->xml_encoding = 'US-ASCII';
7543  }
7544  } else {
7545  // should be US-ASCII for HTTP 1.0 or ISO-8859-1 for HTTP 1.1
7546  $this->xml_encoding = 'ISO-8859-1';
7547  }
7548  $this->debug('Use encoding: ' . $this->xml_encoding . ' when creating nusoap_parser');
7549  $parser = new nusoap_parser($data,$this->xml_encoding,$this->operation,$this->decode_utf8);
7550  // add parser debug data to our debug
7551  $this->appendDebug($parser->getDebug());
7552  // if parse errors
7553  if($errstr = $parser->getError()){
7554  $this->setError( $errstr);
7555  // destroy the parser object
7556  unset($parser);
7557  return false;
7558  } else {
7559  // get SOAP headers
7560  $this->responseHeaders = $parser->getHeaders();
7561  // get SOAP headers
7562  $this->responseHeader = $parser->get_soapheader();
7563  // get decoded message
7564  $return = $parser->get_soapbody();
7565  // add document for doclit support
7566  $this->document = $parser->document;
7567  // destroy the parser object
7568  unset($parser);
7569  // return decode message
7570  return $return;
7571  }
7572  }
appendDebug($string)
adds debug data to the instance debug string without formatting
Definition: nusoap.php:294
setError($str)
sets error string
Definition: nusoap.php:184
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
varDump($data)
Definition: nusoap.php:567
$parser
Definition: BPMN2Parser.php:23
nusoap_parser class parses SOAP XML messages into native PHP values
Definition: nusoap.php:6425
$data
Definition: bench.php:6
+ Here is the call graph for this function:

◆ send()

nusoap_client::send (   $msg,
  $soapaction = '',
  $timeout = 0,
  $response_timeout = 30 
)

send the SOAP message

Note: if the operation has multiple return values the return value of this method will be an array of those values.

@param    string $msg a SOAPx4 soapmsg object
@param    string $soapaction SOAPAction value
@param    integer $timeout set connection timeout in seconds
@param      integer $response_timeout set response timeout in seconds
@return     mixed native PHP types.
@access   private

Definition at line 7450 of file nusoap.php.

References $http, nusoap_base\appendDebug(), nusoap_base\debug(), nusoap_base\getError(), and nusoap_base\setError().

7450  {
7451  $this->checkCookies();
7452  // detect transport
7453  switch(true){
7454  // http(s)
7455  case preg_match('/^http/',$this->endpoint):
7456  $this->debug('transporting via HTTP');
7457  if($this->persistentConnection == true && is_object($this->persistentConnection)){
7459  } else {
7460  $http = new soap_transport_http($this->endpoint, $this->curl_options, $this->use_curl);
7461  if ($this->persistentConnection) {
7462  $http->usePersistentConnection();
7463  }
7464  }
7465  $http->setContentType($this->getHTTPContentType(), $this->getHTTPContentTypeCharset());
7466  $http->setSOAPAction($soapaction);
7467  if($this->proxyhost && $this->proxyport){
7468  $http->setProxy($this->proxyhost,$this->proxyport,$this->proxyusername,$this->proxypassword);
7469  }
7470  if($this->authtype != '') {
7471  $http->setCredentials($this->username, $this->password, $this->authtype, array(), $this->certRequest);
7472  }
7473  if($this->http_encoding != ''){
7474  $http->setEncoding($this->http_encoding);
7475  }
7476  $this->debug('sending message, length='.strlen($msg));
7477  if(preg_match('/^http:/',$this->endpoint)){
7478  //if(strpos($this->endpoint,'http:')){
7479  $this->responseData = $http->send($msg,$timeout,$response_timeout,$this->cookies);
7480  } elseif(preg_match('/^https/',$this->endpoint)){
7481  //} elseif(strpos($this->endpoint,'https:')){
7482  //if(phpversion() == '4.3.0-dev'){
7483  //$response = $http->send($msg,$timeout,$response_timeout);
7484  //$this->request = $http->outgoing_payload;
7485  //$this->response = $http->incoming_payload;
7486  //} else
7487  $this->responseData = $http->sendHTTPS($msg,$timeout,$response_timeout,$this->cookies);
7488  } else {
7489  $this->setError('no http/s in endpoint url');
7490  }
7491  $this->request = $http->outgoing_payload;
7492  $this->response = $http->incoming_payload;
7493  $this->appendDebug($http->getDebug());
7494  $this->UpdateCookies($http->incoming_cookies);
7495 
7496  // save transport object if using persistent connections
7497  if ($this->persistentConnection) {
7498  $http->clearDebug();
7499  if (!is_object($this->persistentConnection)) {
7500  $this->persistentConnection = $http;
7501  }
7502  }
7503 
7504  if($err = $http->getError()){
7505  $this->setError('HTTP Error: '.$err);
7506  return false;
7507  } elseif($this->getError()){
7508  return false;
7509  } else {
7510  $this->debug('got response, length='. strlen($this->responseData).' type='.$http->incoming_headers['content-type']);
7511  return $this->parseResponse($http->incoming_headers, $this->responseData);
7512  }
7513  break;
7514  default:
7515  $this->setError('no transport found, or selected transport is not yet supported!');
7516  return false;
7517  break;
7518  }
7519  }
appendDebug($string)
adds debug data to the instance debug string without formatting
Definition: nusoap.php:294
setError($str)
sets error string
Definition: nusoap.php:184
transport class for sending/receiving data via HTTP and HTTPS NOTE: PHP must be compiled with the CUR...
Definition: nusoap.php:1552
parseResponse($headers, $data)
processes SOAP message returned from server
Definition: nusoap.php:7529
getHTTPContentTypeCharset()
gets the HTTP content type charset for the current request.
Definition: nusoap.php:7877
getError()
returns error string if present
Definition: nusoap.php:171
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
checkCookies()
checks all Cookies and delete those which are expired
Definition: nusoap.php:7924
getHTTPContentType()
gets the HTTP content type for the current request.
Definition: nusoap.php:7864
$http
Definition: raiseError.php:7
UpdateCookies($cookies)
updates the current cookies with a new set
Definition: nusoap.php:7957
+ Here is the call graph for this function:

◆ setCookie()

nusoap_client::setCookie (   $name,
  $value 
)

adds a new Cookie into $this->cookies array

Parameters
string$nameCookie Name
string$valueCookie Value
Returns
boolean if cookie-set was successful returns true, else false public

Definition at line 7900 of file nusoap.php.

References $name.

7900  {
7901  if (strlen($name) == 0) {
7902  return false;
7903  }
7904  $this->cookies[] = array('name' => $name, 'value' => $value);
7905  return true;
7906  }

◆ setCredentials()

nusoap_client::setCredentials (   $username,
  $password,
  $authtype = 'basic',
  $certRequest = array() 
)

if authenticating, set user credentials here

Parameters
string$username
string$password
string$authtype(basic|digest|certificate|ntlm)
array$certRequest(keys must be cainfofile (optional), sslcertfile, sslkeyfile, passphrase, verifypeer (optional), verifyhost (optional): see corresponding options in cURL docs) public

Definition at line 7655 of file nusoap.php.

References $password, nusoap_base\appendDebug(), nusoap_base\debug(), and nusoap_base\varDump().

7655  {
7656  $this->debug("setCredentials username=$username authtype=$authtype certRequest=");
7657  $this->appendDebug($this->varDump($certRequest));
7658  $this->username = $username;
7659  $this->password = $password;
7660  $this->authtype = $authtype;
7661  $this->certRequest = $certRequest;
7662  }
appendDebug($string)
adds debug data to the instance debug string without formatting
Definition: nusoap.php:294
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
varDump($data)
Definition: nusoap.php:567
+ Here is the call graph for this function:

◆ setCurlOption()

nusoap_client::setCurlOption (   $option,
  $value 
)

sets user-specified cURL options

Parameters
mixed$optionThe cURL option (always integer?)
mixed$valueThe cURL option value public

Definition at line 7581 of file nusoap.php.

References nusoap_base\appendDebug(), nusoap_base\debug(), and nusoap_base\varDump().

7581  {
7582  $this->debug("setCurlOption option=$option, value=");
7583  $this->appendDebug($this->varDump($value));
7584  $this->curl_options[$option] = $value;
7585  }
appendDebug($string)
adds debug data to the instance debug string without formatting
Definition: nusoap.php:294
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
varDump($data)
Definition: nusoap.php:567
+ Here is the call graph for this function:

◆ setDefaultRpcParams()

nusoap_client::setDefaultRpcParams (   $rpcParams)

sets the default RPC parameter setting.

If true, default is that call params are like RPC even for document style Each call() can override this value.

This is no longer used.

Parameters
boolean$rpcParamspublic
Deprecated:

Definition at line 7722 of file nusoap.php.

7722  {
7723  $this->defaultRpcParams = $rpcParams;
7724  }

◆ setEndpoint()

nusoap_client::setEndpoint (   $endpoint)

sets the SOAP endpoint, which can override WSDL

Parameters
string$endpointThe endpoint URL to use, or empty string or false to prevent override public

Definition at line 7593 of file nusoap.php.

References $endpoint, and nusoap_base\debug().

7593  {
7594  $this->debug("setEndpoint(\"$endpoint\")");
7595  $this->forceEndpoint = $endpoint;
7596  }
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
+ Here is the call graph for this function:

◆ setHeaders()

nusoap_client::setHeaders (   $headers)

set the SOAP headers

Parameters
mixed$headersString of XML with SOAP header content, or array of soapval objects for SOAP headers public

Definition at line 7604 of file nusoap.php.

References nusoap_base\appendDebug(), nusoap_base\debug(), and nusoap_base\varDump().

7604  {
7605  $this->debug("setHeaders headers=");
7606  $this->appendDebug($this->varDump($headers));
7607  $this->requestHeaders = $headers;
7608  }
appendDebug($string)
adds debug data to the instance debug string without formatting
Definition: nusoap.php:294
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
varDump($data)
Definition: nusoap.php:567
+ Here is the call graph for this function:

◆ setHTTPEncoding()

nusoap_client::setHTTPEncoding (   $enc = 'gzip,
deflate'   
)

use HTTP encoding

Parameters
string$encHTTP encoding public

Definition at line 7670 of file nusoap.php.

References nusoap_base\debug().

7670  {
7671  $this->debug("setHTTPEncoding(\"$enc\")");
7672  $this->http_encoding = $enc;
7673  }
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
+ Here is the call graph for this function:

◆ setHTTPProxy()

nusoap_client::setHTTPProxy (   $proxyhost,
  $proxyport,
  $proxyusername = '',
  $proxypassword = '' 
)

set proxy info here

Parameters
string$proxyhost
string$proxyport
string$proxyusername
string$proxypasswordpublic

Definition at line 7639 of file nusoap.php.

7639  {
7640  $this->proxyhost = $proxyhost;
7641  $this->proxyport = $proxyport;
7642  $this->proxyusername = $proxyusername;
7643  $this->proxypassword = $proxypassword;
7644  }

◆ setUseCURL()

nusoap_client::setUseCURL (   $use)

Set whether to try to use cURL connections if possible.

Parameters
boolean$useWhether to try to use cURL public

Definition at line 7681 of file nusoap.php.

References nusoap_base\debug().

7681  {
7682  $this->debug("setUseCURL($use)");
7683  $this->use_curl = $use;
7684  }
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
+ Here is the call graph for this function:

◆ UpdateCookies()

nusoap_client::UpdateCookies (   $cookies)

updates the current cookies with a new set

Parameters
array$cookiesnew cookies with which to update current ones
Returns
boolean always return true private

Definition at line 7957 of file nusoap.php.

References $domain, $i, and nusoap_base\debug().

7957  {
7958  if (sizeof($this->cookies) == 0) {
7959  // no existing cookies: take whatever is new
7960  if (sizeof($cookies) > 0) {
7961  $this->debug('Setting new cookie(s)');
7962  $this->cookies = $cookies;
7963  }
7964  return true;
7965  }
7966  if (sizeof($cookies) == 0) {
7967  // no new cookies: keep what we've got
7968  return true;
7969  }
7970  // merge
7971  foreach ($cookies as $newCookie) {
7972  if (!is_array($newCookie)) {
7973  continue;
7974  }
7975  if ((!isset($newCookie['name'])) || (!isset($newCookie['value']))) {
7976  continue;
7977  }
7978  $newName = $newCookie['name'];
7979 
7980  $found = false;
7981  for ($i = 0; $i < count($this->cookies); $i++) {
7982  $cookie = $this->cookies[$i];
7983  if (!is_array($cookie)) {
7984  continue;
7985  }
7986  if (!isset($cookie['name'])) {
7987  continue;
7988  }
7989  if ($newName != $cookie['name']) {
7990  continue;
7991  }
7992  $newDomain = isset($newCookie['domain']) ? $newCookie['domain'] : 'NODOMAIN';
7993  $domain = isset($cookie['domain']) ? $cookie['domain'] : 'NODOMAIN';
7994  if ($newDomain != $domain) {
7995  continue;
7996  }
7997  $newPath = isset($newCookie['path']) ? $newCookie['path'] : 'NOPATH';
7998  $path = isset($cookie['path']) ? $cookie['path'] : 'NOPATH';
7999  if ($newPath != $path) {
8000  continue;
8001  }
8002  $this->cookies[$i] = $newCookie;
8003  $found = true;
8004  $this->debug('Update cookie ' . $newName . '=' . $newCookie['value']);
8005  break;
8006  }
8007  if (! $found) {
8008  $this->debug('Add cookie ' . $newName . '=' . $newCookie['value']);
8009  $this->cookies[] = $newCookie;
8010  }
8011  }
8012  return true;
8013  }
$path
Definition: aliased.php:25
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
$i
Definition: disco.tpl.php:19
if(!array_key_exists('domain', $_REQUEST)) $domain
Definition: resume.php:8
+ Here is the call graph for this function:

◆ useHTTPPersistentConnection()

nusoap_client::useHTTPPersistentConnection ( )

use HTTP persistent connections if possible

public

Definition at line 7691 of file nusoap.php.

References nusoap_base\debug().

7691  {
7692  $this->debug("useHTTPPersistentConnection");
7693  $this->persistentConnection = true;
7694  }
debug($string)
adds debug data to the class level debug string
Definition: nusoap.php:144
+ Here is the call graph for this function:

Field Documentation

◆ $authtype

nusoap_client::$authtype = ''

Definition at line 7076 of file nusoap.php.

◆ $bindingType

nusoap_client::$bindingType = ''

Definition at line 7102 of file nusoap.php.

◆ $certRequest

nusoap_client::$certRequest = array()

Definition at line 7077 of file nusoap.php.

◆ $cookies

nusoap_client::$cookies = array()

Definition at line 7098 of file nusoap.php.

◆ $curl_options

nusoap_client::$curl_options = array()

Definition at line 7101 of file nusoap.php.

◆ $decode_utf8

nusoap_client::$decode_utf8 = true

Definition at line 7099 of file nusoap.php.

◆ $defaultRpcParams

nusoap_client::$defaultRpcParams = false

Definition at line 7094 of file nusoap.php.

◆ $document

nusoap_client::$document = ''

Definition at line 7081 of file nusoap.php.

◆ $endpoint

nusoap_client::$endpoint

Definition at line 7082 of file nusoap.php.

◆ $endpointType

nusoap_client::$endpointType = ''

Definition at line 7092 of file nusoap.php.

◆ $fault

nusoap_client::$fault

Definition at line 7112 of file nusoap.php.

◆ $faultcode

nusoap_client::$faultcode

Definition at line 7117 of file nusoap.php.

◆ $faultdetail

nusoap_client::$faultdetail

Definition at line 7127 of file nusoap.php.

◆ $faultstring

nusoap_client::$faultstring

Definition at line 7122 of file nusoap.php.

◆ $forceEndpoint

nusoap_client::$forceEndpoint = ''

Definition at line 7083 of file nusoap.php.

◆ $http_encoding

nusoap_client::$http_encoding = false

Definition at line 7089 of file nusoap.php.

◆ $operations

nusoap_client::$operations = array()

Definition at line 7100 of file nusoap.php.

◆ $password

nusoap_client::$password = ''

Definition at line 7075 of file nusoap.php.

◆ $persistentConnection

nusoap_client::$persistentConnection = false

Definition at line 7093 of file nusoap.php.

◆ $proxyhost

nusoap_client::$proxyhost = ''

Definition at line 7084 of file nusoap.php.

◆ $proxypassword

nusoap_client::$proxypassword = ''

Definition at line 7087 of file nusoap.php.

◆ $proxyport

nusoap_client::$proxyport = ''

Definition at line 7085 of file nusoap.php.

◆ $proxyusername

nusoap_client::$proxyusername = ''

Definition at line 7086 of file nusoap.php.

◆ $request

nusoap_client::$request = ''

Definition at line 7095 of file nusoap.php.

◆ $requestHeaders

nusoap_client::$requestHeaders = false

Definition at line 7078 of file nusoap.php.

◆ $response

nusoap_client::$response = ''

Definition at line 7096 of file nusoap.php.

◆ $response_timeout

nusoap_client::$response_timeout = 30

Definition at line 7091 of file nusoap.php.

◆ $responseData

nusoap_client::$responseData = ''

Definition at line 7097 of file nusoap.php.

◆ $responseHeader

nusoap_client::$responseHeader = NULL

Definition at line 7080 of file nusoap.php.

◆ $responseHeaders

nusoap_client::$responseHeaders = ''

Definition at line 7079 of file nusoap.php.

◆ $timeout

nusoap_client::$timeout = 0

Definition at line 7090 of file nusoap.php.

◆ $use_curl

nusoap_client::$use_curl = false

Definition at line 7103 of file nusoap.php.

◆ $username

nusoap_client::$username = ''

Definition at line 7074 of file nusoap.php.

◆ $xml_encoding

nusoap_client::$xml_encoding = ''

Definition at line 7088 of file nusoap.php.


The documentation for this class was generated from the following file: