Source of: /manual/en/soapclient.soapclient.php
<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/class.soapclient.inc";
$setup = array (
'home' =>
array (
0 => 'index.php',
1 => 'PHP Manual',
),
'head' =>
array (
0 => 'UTF-8',
1 => 'en',
),
'this' =>
array (
0 => 'soapclient.soapclient.php',
1 => 'SoapClient::SoapClient',
),
'up' =>
array (
0 => 'class.soapclient.php',
1 => 'The SoapClient class',
),
'prev' =>
array (
0 => 'soapclient.soapcall.php',
1 => 'SoapClient::__soapCall',
),
'next' =>
array (
0 => 'class.soapserver.php',
1 => 'SoapServer',
),
);
$setup["toc"] = $TOC;
$setup["parents"] = $PARENTS;
manual_setup($setup);
manual_header();
?>
<div id="soapclient.soapclient" class="refentry">
<div class="refnamediv">
<h1 class="refname">SoapClient::SoapClient</h1>
<p class="verinfo">(PHP 5 >= 5.0.1)</p><p class="refpurpose"><span class="refname">SoapClient::SoapClient</span> — <span class="dc-title">SoapClient constructor</span></p>
</div>
<a name="soapclient.soapclient.description"></a><div class="refsect1 description">
<h3 class="title">Description</h3>
<div class="methodsynopsis dc-description">
<span class="methodname"><b>SoapClient::SoapClient</b></span>
( <span class="methodparam"><span class="type"><a href="language.pseudo-types.php#language.types.mixed" class="type mixed">mixed</a></span> <tt class="parameter">$wsdl</tt></span>
[, <span class="methodparam"><span class="type">array</span> <tt class="parameter">$options</tt></span>
] )</div>
<p class="para rdfs-comment">
This constructor creates <a href="class.soapclient.php" class="classname">SoapClient</a> objects
in <i>WSDL</i> or <i>non-WSDL</i> mode.
</p>
</div>
<a name="soapclient.soapclient.parameters"></a><div class="refsect1 parameters">
<h3 class="title">Parameters</h3>
<p class="para">
</p><dl>
<dt class="varlistentry">
<span class="term"><i><tt class="parameter">wsdl</tt></i>
</span>
</dt><dd class="listitem">
<p class="para">
URI of the <i>WSDL</i> file or <b><tt class="constant">NULL</tt></b> if working in
<i>non-WSDL</i> mode.
</p>
<blockquote><p><b class="note">Note</b>:
During development, WSDL caching may be disabled by the
use of the <i>soap.wsdl_cache_ttl</i> <var class="filename">php.ini</var> setting
otherwise changes made to the WSDL file will have no effect until
<i>soap.wsdl_cache_ttl</i> is expired.
<br />
</p></blockquote>
</dd>
<dt class="varlistentry">
<span class="term"><i><tt class="parameter">options</tt></i>
</span>
</dt><dd class="listitem">
<p class="para">
An array of options. If working in WSDL mode, this parameter is optional.
If working in non-WSDL mode, the <i>location</i> and
<i>uri</i> options must be set, where <i>location</i> is
the URL to request and <i>uri</i> is the target namespace of the
SOAP service.
</p>
<p class="para">
The <i>style</i> and <i>use</i> options only work in
non-WSDL mode. In WSDL mode, they come from the WSDL file.
</p>
<p class="para">
The <i>soap_version</i> option specifies whether to use SOAP
1.1, or SOAP 1.2 client.
</p>
<p class="para">
For HTTP authentication, the <i>login</i> and
<i>password</i> options can be used to supply credentials.
For making an HTTP connection through
a proxy server, the options <i>proxy_host</i>,
<i>proxy_port</i>, <i>proxy_login</i>
and <i>proxy_password</i> are also available.
For HTTPS client certificate authentication use
<i>local_cert</i> and <i>passphrase</i> options.
</p>
<p class="para">
The <i>compression</i> option allows to use compression
of HTTP SOAP requests and responses.
</p>
<p class="para">
The <i>encoding</i> 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.
</p>
<p class="para">
The <i>classmap</i> 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.
</p>
<p class="para">
Setting the boolean <i>trace</i> option enables use of the
methods <a href="soapclient.getlastrequest.php" class="link">
SoapClient->__getLastRequest</a>,
<a href="soapclient.getlastrequestheaders.php" class="link">
SoapClient->__getLastRequestHeaders</a>,
<a href="soapclient.getlastresponse.php" class="link">
SoapClient->__getLastResponse</a> and
<a href="soapclient.getlastresponseheaders.php" class="link">
SoapClient->__getLastResponseHeaders</a>.
</p>
<p class="para">
The <i>exceptions</i> option is a boolean value defining whether
soap errors throw exceptions of type <a href="soapfault.soapfault.php" class="link">
SoapFault</a>.
</p>
<p class="para">
The <i>connection_timeout</i> 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
<a href="filesystem.configuration.php#ini.default-socket-timeout" class="link">default_socket_timeout</a> setting
is available.
</p>
<p class="para">
The <i>typemap</i> option is an array of type mappings.
Type mapping is an array with keys <i>type_name</i>,
<i>type_ns</i> (namespace URI), <i>from_xml</i>
(callback accepting one string parameter) and <i>to_xml</i>
(callback accepting one object parameter).
</p>
<p class="para">
The <i>cache_wsdl</i> option is one of
<b><tt class="constant">WSDL_CACHE_NONE</tt></b>,
<b><tt class="constant">WSDL_CACHE_DISK</tt></b>,
<b><tt class="constant">WSDL_CACHE_MEMORY</tt></b> or
<b><tt class="constant">WSDL_CACHE_BOTH</tt></b>.
</p>
<p class="para">
The <i>user_agent</i> option specifies string to use in
<i>User-Agent</i> header.
</p>
<p class="para">
The <i>stream_context</i> option is a <a href="language.types.resource.php" class="type resource">resource</a>
for <a href="context.php" class="link">context</a>.
</p>
<p class="para">
The <i>features</i> option is a bitmask of
<b><tt class="constant">SOAP_SINGLE_ELEMENT_ARRAYS</tt></b>,
<b><tt class="constant">SOAP_USE_XSI_ARRAY_TYPE</tt></b>,
<b><tt class="constant">SOAP_WAIT_ONE_WAY_CALLS</tt></b>.
</p>
</dd>
</dl>
<p>
</p>
</div>
<a name="soapclient.soapclient.examples"></a><div class="refsect1 examples">
<h3 class="title">Examples</h3>
<p class="para">
</p><div class="example">
<p><b>Example #1 <b>SoapClient::SoapClient()</b> example</b></p>
<div class="example-contents programlisting">
<div class="phpcode"><code><span style="color: #000000">
<span style="color: #0000BB"><?php<br /><br />$client </span><span style="color: #007700">= new </span><span style="color: #0000BB">SoapClient</span><span style="color: #007700">(</span><span style="color: #DD0000">"some.wsdl"</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$client </span><span style="color: #007700">= new </span><span style="color: #0000BB">SoapClient</span><span style="color: #007700">(</span><span style="color: #DD0000">"some.wsdl"</span><span style="color: #007700">, array(</span><span style="color: #DD0000">'soap_version' </span><span style="color: #007700">=> </span><span style="color: #0000BB">SOAP_1_2</span><span style="color: #007700">));<br /><br /></span><span style="color: #0000BB">$client </span><span style="color: #007700">= new </span><span style="color: #0000BB">SoapClient</span><span style="color: #007700">(</span><span style="color: #DD0000">"some.wsdl"</span><span style="color: #007700">, array(</span><span style="color: #DD0000">'login' </span><span style="color: #007700">=> </span><span style="color: #DD0000">"some_name"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'password' </span><span style="color: #007700">=> </span><span style="color: #DD0000">"some_password"</span><span style="color: #007700">));<br /><br /></span><span style="color: #0000BB">$client </span><span style="color: #007700">= new </span><span style="color: #0000BB">SoapClient</span><span style="color: #007700">(</span><span style="color: #DD0000">"some.wsdl"</span><span style="color: #007700">, array(</span><span style="color: #DD0000">'proxy_host' </span><span style="color: #007700">=> </span><span style="color: #DD0000">"localhost"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'proxy_port' </span><span style="color: #007700">=> </span><span style="color: #0000BB">8080</span><span style="color: #007700">));<br /><br /></span><span style="color: #0000BB">$client </span><span style="color: #007700">= new </span><span style="color: #0000BB">SoapClient</span><span style="color: #007700">(</span><span style="color: #DD0000">"some.wsdl"</span><span style="color: #007700">, array(</span><span style="color: #DD0000">'proxy_host' </span><span style="color: #007700">=> </span><span style="color: #DD0000">"localhost"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'proxy_port' </span><span style="color: #007700">=> </span><span style="color: #0000BB">8080</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'proxy_login' </span><span style="color: #007700">=> </span><span style="color: #DD0000">"some_name"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'proxy_password' </span><span style="color: #007700">=> </span><span style="color: #DD0000">"some_password"</span><span style="color: #007700">));<br /><br /></span><span style="color: #0000BB">$client </span><span style="color: #007700">= new </span><span style="color: #0000BB">SoapClient</span><span style="color: #007700">(</span><span style="color: #DD0000">"some.wsdl"</span><span style="color: #007700">, array(</span><span style="color: #DD0000">'local_cert' </span><span style="color: #007700">=> </span><span style="color: #DD0000">"cert_key.pem"</span><span style="color: #007700">));<br /><br /></span><span style="color: #0000BB">$client </span><span style="color: #007700">= new </span><span style="color: #0000BB">SoapClient</span><span style="color: #007700">(</span><span style="color: #0000BB">null</span><span style="color: #007700">, array(</span><span style="color: #DD0000">'location' </span><span style="color: #007700">=> </span><span style="color: #DD0000">"http://localhost/soap.php"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'uri' </span><span style="color: #007700">=> </span><span style="color: #DD0000">"http://test-uri/"</span><span style="color: #007700">));<br /><br /></span><span style="color: #0000BB">$client </span><span style="color: #007700">= new </span><span style="color: #0000BB">SoapClient</span><span style="color: #007700">(</span><span style="color: #0000BB">null</span><span style="color: #007700">, array(</span><span style="color: #DD0000">'location' </span><span style="color: #007700">=> </span><span style="color: #DD0000">"http://localhost/soap.php"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'uri' </span><span style="color: #007700">=> </span><span style="color: #DD0000">"http://test-uri/"</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'style' </span><span style="color: #007700">=> </span><span style="color: #0000BB">SOAP_DOCUMENT</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'use' </span><span style="color: #007700">=> </span><span style="color: #0000BB">SOAP_LITERAL</span><span style="color: #007700">));<br /><br /></span><span style="color: #0000BB">$client </span><span style="color: #007700">= new </span><span style="color: #0000BB">SoapClient</span><span style="color: #007700">(</span><span style="color: #DD0000">"some.wsdl"</span><span style="color: #007700">, <br /> array(</span><span style="color: #DD0000">'compression' </span><span style="color: #007700">=> </span><span style="color: #0000BB">SOAP_COMPRESSION_ACCEPT </span><span style="color: #007700">| </span><span style="color: #0000BB">SOAP_COMPRESSION_GZIP</span><span style="color: #007700">));<br /><br /></span><span style="color: #0000BB">$server </span><span style="color: #007700">= new </span><span style="color: #0000BB">SoapClient</span><span style="color: #007700">(</span><span style="color: #DD0000">"some.wsdl"</span><span style="color: #007700">, array(</span><span style="color: #DD0000">'encoding'</span><span style="color: #007700">=></span><span style="color: #DD0000">'ISO-8859-1'</span><span style="color: #007700">));<br /><br />class </span><span style="color: #0000BB">MyBook </span><span style="color: #007700">{<br /> public </span><span style="color: #0000BB">$title</span><span style="color: #007700">;<br /> public </span><span style="color: #0000BB">$author</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #0000BB">$server </span><span style="color: #007700">= new </span><span style="color: #0000BB">SoapClient</span><span style="color: #007700">(</span><span style="color: #DD0000">"books.wsdl"</span><span style="color: #007700">, array(</span><span style="color: #DD0000">'classmap' </span><span style="color: #007700">=> array(</span><span style="color: #DD0000">'book' </span><span style="color: #007700">=> </span><span style="color: #DD0000">"MyBook"</span><span style="color: #007700">)));<br /><br /></span><span style="color: #0000BB">?></span>
</span>
</code></div>
</div>
</div><p>
</p>
</div>
</div><?php manual_footer(); ?>