The SOAP extension can be used to write SOAP Servers and Clients. It supports subsets of SOAP 1.1, SOAP 1.2 and WSDL 1.1 specifications.
This extension makes use of the GNOME xml library. Download and install this library. You will need at least libxml-2.5.4.
This extension is only available if PHP was configured with --enable-soap.
The behaviour of these functions is affected by settings in php.ini.
Table 1. SOAP Configuration Options
Name | Default | Changeable | Changelog |
---|---|---|---|
soap.wsdl_cache_enabled | "1" | PHP_INI_ALL | Available since PHP 5.0.0. |
soap.wsdl_cache_dir | "/tmp" | PHP_INI_ALL | Available since PHP 5.0.0. |
soap.wsdl_cache_ttl | "86400" | PHP_INI_ALL | Available since PHP 5.0.0. |
Here's a short explanation of the configuration directives.
SoapClient->__construct() - constructs a new SoapClient object
SoapClient->__call() - Calls a SOAP function (deprecated)
SoapClient->__doRequest() - Performs a SOAP request
SoapClient->__getFunctions() - Returns list of SOAP functions
SoapClient->__getLastRequest() - Returns last SOAP request
SoapClient->__getLastRequestHeaders() - Returns last SOAP request headers
SoapClient->__getLastResponse() - Returns last SOAP response
SoapClient->__getLastResponseHeaders() - Returns last SOAP response headers
SoapClient->__getTypes() - Returns list of SOAP types
SoapClient->__setCookie() - Sets the cookie that will be sent with the SOAP request
SoapClient->__soapCall() - Calls a SOAP function
SoapFault->__construct() - construct a new SoapFault object
SoapHeader is a special low-level class for passing or returning SOAP headers. It's just a data holder and it does not have any special methods except its constructor. It can be used in the SoapClient->__soapCall() method to pass a SOAP header or in a SOAP header handler to return the header in a SOAP response.
SoapHeader->__construct() - construct a new SoapHeader object
SoapParam is a special low-level class for naming parameters and returning values in non-WSDL mode. It's just a data holder and it does not have any special methods except its constructor.
SoapParam->__construct() - construct a new SoapParam object
SoapServer->__construct() - construct a new SoapServer object
SoapServer->addFunction() - Adds one or several functions those will handle SOAP requests
SoapServer->getFunctions() - Returns list of defined functions
SoapServer->handle() - Handles a SOAP request
SoapServer->setClass() - Sets class which will handle SOAP requests
SoapServer->setPersistence() - Sets persistence mode of SoapServer
SoapVar is a special low-level class for encoding parameters and returning values in non-WSDL mode. It's just a data holder and does not have any special methods except the constructor. It's useful when you want to set the type property in SOAP request or response.
SoapVar->__construct() - construct a new SoapVar object
The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.
Added in PHP 5.1.0.