CLIII. SOAP Functions

Introduction

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.

Requirements

This extension makes use of the GNOME xml library. Download and install this library. You will need at least libxml-2.5.4.

Installation

This extension is only available if PHP was configured with --enable-soap.

Runtime Configuration

The behaviour of these functions is affected by settings in php.ini.

Table 1. SOAP Configuration Options

NameDefaultChangeableChangelog
soap.wsdl_cache_enabled"1"PHP_INI_ALLAvailable since PHP 5.0.0.
soap.wsdl_cache_dir"/tmp"PHP_INI_ALLAvailable since PHP 5.0.0.
soap.wsdl_cache_ttl"86400"PHP_INI_ALLAvailable since PHP 5.0.0.
For further details and definitions of the PHP_INI_* constants, see the Appendix H.

Here's a short explanation of the configuration directives.

soap.wsdl_cache_enabled boolean

Enables or disables the WSDL caching feature.

soap.wsdl_cache_dir string

Sets the directory name where the SOAP extension will put cache files.

soap.wsdl_cache_ttl int

Sets the number of seconds (time to live) that cached files will be used instead the originals.

Predefined Classes

SoapClient

Constructor

Methods

SoapFault

Constructor

SoapHeader

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.

Constructor

SoapParam

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.

Constructor

SoapServer

Constructor

Methods

SoapVar

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.

Constructor

Predefined Constants

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.

SOAP_1_1 (integer)

SOAP_1_2 (integer)

SOAP_PERSISTENCE_SESSION (integer)

SOAP_PERSISTENCE_REQUEST (integer)

SOAP_FUNCTIONS_ALL (integer)

SOAP_ENCODED (integer)

SOAP_LITERAL (integer)

SOAP_RPC (integer)

SOAP_DOCUMENT (integer)

SOAP_ACTOR_NEXT (integer)

SOAP_ACTOR_NONE (integer)

SOAP_ACTOR_UNLIMATERECEIVER (integer)

SOAP_COMPRESSION_ACCEPT (integer)

SOAP_COMPRESSION_GZIP (integer)

SOAP_COMPRESSION_DEFLATE (integer)

SOAP_WAIT_ONE_WAY_CALLS (integer)

Added in PHP 5.1.0.

UNKNOWN_TYPE (integer)

XSD_STRING (integer)

XSD_BOOLEAN (integer)

XSD_DECIMAL (integer)

XSD_FLOAT (integer)

XSD_DOUBLE (integer)

XSD_DURATION (integer)

XSD_DATETIME (integer)

XSD_TIME (integer)

XSD_DATE (integer)

XSD_GYEARMONTH (integer)

XSD_GYEAR (integer)

XSD_GMONTHDAY (integer)

XSD_GDAY (integer)

XSD_GMONTH (integer)

XSD_HEXBINARY (integer)

XSD_BASE64BINARY (integer)

XSD_ANYURI (integer)

XSD_ANYXML (integer)

Added in PHP 5.1.0.

XSD_QNAME (integer)

XSD_NOTATION (integer)

XSD_NORMALIZEDSTRING (integer)

XSD_TOKEN (integer)

XSD_LANGUAGE (integer)

XSD_NMTOKEN (integer)

XSD_NAME (integer)

XSD_NCNAME (integer)

XSD_ID (integer)

XSD_IDREF (integer)

XSD_IDREFS (integer)

XSD_ENTITY (integer)

XSD_ENTITIES (integer)

XSD_INTEGER (integer)

XSD_NONPOSITIVEINTEGER (integer)

XSD_NEGATIVEINTEGER (integer)

XSD_LONG (integer)

XSD_INT (integer)

XSD_SHORT (integer)

XSD_BYTE (integer)

XSD_NONNEGATIVEINTEGER (integer)

XSD_UNSIGNEDLONG (integer)

XSD_UNSIGNEDINT (integer)

XSD_UNSIGNEDSHORT (integer)

XSD_UNSIGNEDBYTE (integer)

XSD_POSITIVEINTEGER (integer)

XSD_NMTOKENS (integer)

XSD_ANYTYPE (integer)

SOAP_ENC_OBJECT (integer)

SOAP_ENC_ARRAY (integer)

XSD_1999_TIMEINSTANT (integer)

XSD_NAMESPACE (string)

XSD_1999_NAMESPACE (string)

Table of Contents
is_soap_fault --  Checks if SOAP call was failed
SoapClient->__call() --  Calls a SOAP function (deprecated)
SoapClient->__construct() --  SoapClient constructor
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() --  SoapFault constructor
SoapHeader->__construct() --  SoapHeader constructor
SoapParam->__construct() --  SoapParam constructor
SoapServer->addFunction() --  Adds one or several functions those will handle SOAP requests
SoapServer->__construct() --  SoapServer constructor
SoapServer->fault() -- Issue SoapServer fault indicating an error
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->__construct() --  SoapVar constructor
use_soap_error_handler -- Set whether to use the SOAP error handler and return the former value