(no version information, might be only in CVS)

SoapClient->__construct() --  SoapClient constructor


class SoapClient {

__construct ( mixed wsdl [, array options] )


This constructor creates SoapClient objects in WSDL or non-WSDL mode.



URI of the WSDL file or NULL if working in non-WSDL mode.


An array of options. If working in WSDL mode, this parameter is optional. If working in non-WSDL mode, you must set the location and uri options, where location is the URL to request 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 specifies whether to use SOAP 1.1, or SOAP 1.2 client.

For HTTP authentication, you may use the login and password options. For making an HTTP connection through a proxy server, use the options proxy_host, proxy_port, proxy_login and proxy_password. For HTTPS client certificate authentication use local_cert and passphrase options.

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 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.

The trace and exceptions options are useful for debuging purpose.


Example 1. SoapClient examples


= 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",

$server = new SoapClient("some.wsdl", array('encoding'=>'ISO-8859-1'));

MyBook {
public $title;
public $author;

$server = new SoapClient("books.wsdl", array('classmap' => array('book' => "MyBook")));


© Copyright 2003-2014 The ultimate PHP Editor and PHP IDE site.