📄 function.soap-soapclient-construct.html
字号:
a proxy server, use the options <i>proxy_host</i>, <i>proxy_port</i>, <i>proxy_login</i> and <i>proxy_password</i>. 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="function.soap-soapclient-getlastrequest.html" class="link"> SoapClient->__getLastRequest</a>, <a href="function.soap-soapclient-getlastrequestheaders.html" class="link"> SoapClient->__getLastRequestHeaders</a>, <a href="function.soap-soapclient-getlastresponse.html" class="link"> SoapClient->__getLastResponse</a> and <a href="function.soap-soapclient-getlastresponseheaders.html" 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="function.soap-soapfault-construct.html" 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.html#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"> </p> <p class="para"> Other options are <i>stream_context</i>, <i>features</i>, <i>cache_wsdl</i> and <i>user_agent</i>. </p> </dd> </dt> </dl> </p> </div> <div class="refsect1 examples"> <h3 class="title">Examples</h3> <p class="para"> <div class="example"> <p><b>Example #1 SoapClient examples</b></p> <div class="example-contents"><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> </div> </div><hr /><div style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="function.soap-soapclient-call.html">SoapClient->__call</a></div> <div class="next" style="text-align: right; float: right;"><a href="function.soap-soapclient-dorequest.html">SoapClient->__doRequest</a></div> <div class="up"><a href="ref.soap.html">SOAP Functions</a></div> <div class="home"><a href="index.html">PHP Manual</a></div></div></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -