SOAP Web Service Tutorials - Herong's Tutorial Examples - v5.11, by Dr. Herong Yang
PHP SOAP Extension Functions for Server Programs
This section describes PHP SOAP Extension functions for server side programs.
If you read the SOAP Extension reference page, you will see that SOAP Extension support SOAP server applications with a class called SoapServer, which offers the following functions:
SoapServer->__construct() allows you to construct a new SoapServer object with the following syntax:
__construct ( mixed wsdl [, array options] );
where "wsdl" specifies the URL of the WSDL document, and "options" specifies a list of options:
'uri' => "...", # the name space of the SOAP service 'soap_version' => SOAP_1_1 | SOAP_1_2, 'actor' => "...", # the actor 'encoding' => "...", # the encoding name 'classmap' => "...", # a map of WSDL types to PHP classes ...
Note that SoapServer object can be constructed in two modes, WSDL mode and non-WSDL mode:
__construct( "..."[, array options] ); # WSDL mode, many options # are provided by the WSDL document __construct( null, array options ); # non-WSDL mode, # 'uri' is a required option.
SoapServer->addFunction() allows you to add one or more functions to handle SOAP requests. The functions to be added are functions defined in the current PHP program file.
$obj->addFunction("func"); # adds one function $obj->addFunction(array("func1",...)); # adds many functions $obj->addFunction(SOAP_FUNCTIONS_ALL); # adds all functions
SoapServer->setClass() allows you to all methods in the specified class to handle SOAP requests.
SoapServer->handle() allows you to return the execution back the SOAP Extension to handle the incoming SOAP request.
SoapServer->getFunctions() allows you to get a list of all functions that have been assigned to handle SOAP requests.
array $a = $obj->getFunctions();
Table of Contents