SOAPCLIENT(3) 1 SOAPCLIENT(3)The SoapClient classINTRODUCTION
The SoapClient class provides a client for SOAP 1.1, SOAP 1.2 servers. It can be used in WSDL or non-WSDL mode.
CLASS SYNOPSIS
SoapClient
SoapClient
Methods
o public mixed SoapClient::__call (string $function_name, string $arguments)
o public SoapClient::SoapClient (mixed $wsdl, [array $options])
o public string SoapClient::__doRequest (string $request, string $location, string $action, int $version, [int $one_way])
o public array SoapClient::__getFunctions (void )
o public string SoapClient::__getLastRequest (void )
o public string SoapClient::__getLastRequestHeaders (void )
o public string SoapClient::__getLastResponse (void )
o public string SoapClient::__getLastResponseHeaders (void )
o public array SoapClient::__getTypes (void )
o public void SoapClient::__setCookie (string $name, [string $value])
o public string SoapClient::__setLocation ([string $new_location])
o public bool SoapClient::__setSoapHeaders ([mixed $soapheaders])
o public mixed SoapClient::__soapCall (string $function_name, array $arguments, [array $options], [mixed $input_headers], [array
&$output_headers])
o public SoapClient::SoapClient (mixed $wsdl, [array $options])
PHP Documentation Group SOAPCLIENT(3)
Check Out this Related Man Page
SOAPCLIENT.SOAPCLIENT(3) 1 SOAPCLIENT.SOAPCLIENT(3)SoapClient::SoapClient - SoapClient constructor
SYNOPSIS
public SoapClient::SoapClient (mixed $wsdl, [array $options])
DESCRIPTION
This constructor creates SoapClient objects in WSDL or non-WSDL mode.
PARAMETERS
o $wsdl
- URI of the WSDL file or NULL if working in non-WSDL mode.
Note
During development, WSDL caching may be disabled by the use of the soap.wsdl_cache_ttl php.ini setting otherwise changes
made to the WSDL file will have no effect until soap.wsdl_cache_ttl is expired.
o $options
- An array of options. If working in WSDL mode, this parameter is optional. If working in non-WSDL mode, the location and uri
options must be set, where location is the URL of the SOAP server to send the request to, and uri is the target namespace of the
SOAP service. The style and use options only work in non-WSDL mode. In WSDL mode, they come from the WSDL file. The soap_version
option should be one of either SOAP_1_1 or SOAP_1_2 to select SOAP 1.1 or 1.2, respectively. If omitted, 1.1 is used. For HTTP
authentication, the login and password options can be used to supply credentials. For making an HTTP connection through a proxy
server, the options proxy_host, proxy_port, proxy_login and proxy_password are also available. For HTTPS client certificate
authentication use local_cert and passphrase options. An authentication may be supplied in the authentication option. The authen-
tication method may be either SOAP_AUTHENTICATION_BASIC (default) or SOAP_AUTHENTICATION_DIGEST. The compression option allows to
use compression of HTTP SOAP requests and responses. The encoding option defines internal character encoding. This option does
not change the encoding of SOAP requests (it is always utf-8), but converts strings into it. The trace option enables tracing of
request so faults can be backtraced. This defaults to FALSE The classmap option can be used to map some WSDL types to PHP classes.
This option must be an array with WSDL types as keys and names of PHP classes as values. Setting the boolean trace option enables
use of the methods SoapClient->__getLastRequest, SoapClient->__getLastRequestHeaders, SoapClient->__getLastResponse and Soap-
Client->__getLastResponseHeaders. The exceptions option is a boolean value defining whether soap errors throw exceptions of type
SoapFault. The connection_timeout option defines a timeout in seconds for the connection to the SOAP service. This option does
not define a timeout for services with slow responses. To limit the time to wait for calls to finish the default_socket_timeout
setting is available. The typemap option is an array of type mappings. Type mapping is an array with keys type_name, type_ns
(namespace URI), from_xml (callback accepting one string parameter) and to_xml (callback accepting one object parameter). The
cache_wsdl option is one of WSDL_CACHE_NONE, WSDL_CACHE_DISK, WSDL_CACHE_MEMORY or WSDL_CACHE_BOTH. The user_agent option speci-
fies string to use in User-Agent header. The stream_context option is a resource for context. The features option is a bitmask
of SOAP_SINGLE_ELEMENT_ARRAYS, SOAP_USE_XSI_ARRAY_TYPE, SOAP_WAIT_ONE_WAY_CALLS. The keep_alive option is a boolean value defin-
ing whether to send the Connection: Keep-Alive header or Connection: close. The ssl_method option is one of SOAP_SSL_METHOD_TLS,
SOAP_SSL_METHOD_SSLv2, SOAP_SSL_METHOD_SSLv3 or SOAP_SSL_METHOD_SSLv23.
ERRORS /EXCEPTIONS
SoapClient::SoapClient will generate an E_ERROR error if the location and uri options aren't provided in non-WSDL mode.
A SoapFault exception will be thrown if the $wsdl URI cannot be loaded.
CHANGELOG
+--------+-------------------------+
|Version | |
| | |
| | Description |
| | |
+--------+-------------------------+
| 5.5.0 | |
| | |
| | New ssl_method option. |
| | |
| 5.4.0 | |
| | |
| | New keep_alive option. |
| | |
+--------+-------------------------+
EXAMPLES
Example #1
SoapClient.SoapClient(3) example
<?php
$client = new SoapClient("some.wsdl");
$client = new SoapClient("some.wsdl", array('soap_version' => SOAP_1_2));
$client = new SoapClient("some.wsdl", array('login' => "some_name",
'password' => "some_password"));
$client = new SoapClient("some.wsdl", array('proxy_host' => "localhost",
'proxy_port' => 8080));
$client = new SoapClient("some.wsdl", array('proxy_host' => "localhost",
'proxy_port' => 8080,
'proxy_login' => "some_name",
'proxy_password' => "some_password"));
$client = new SoapClient("some.wsdl", array('local_cert' => "cert_key.pem"));
$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
'uri' => "http://test-uri/"));
$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
'uri' => "http://test-uri/",
'style' => SOAP_DOCUMENT,
'use' => SOAP_LITERAL));
$client = new SoapClient("some.wsdl",
array('compression' => SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_GZIP));
$server = new SoapClient("some.wsdl", array('encoding'=>'ISO-8859-1'));
class MyBook {
public $title;
public $author;
}
$server = new SoapClient("books.wsdl", array('classmap' => array('book' => "MyBook")));
?>
PHP Documentation Group SOAPCLIENT.SOAPCLIENT(3)