SoapServer::SoapServer
(PHP 5, PHP 7)
SoapServer::SoapServer — Конструктор SoapServer
Описание
Данный конструктор позволяет создавать объекты SoapServer в WSDL или не-WSDL режимах.
Список параметров
-
wsdl -
Для использования SoapServer в режиме WSDL, укажите URI WSDL-файла. В противном случае укажите
nullи установите опциюuriравной пространству имен сервера. -
options -
Попытка установить версию SOAP по умолчанию (
soap_version), внутреннюю кодировку (encoding) и URI отправителя (actor).Опцию
classmapможно использовать для сопоставления некоторых типов WSDL с классами PHP. Данная опция должна быть массивом с ключами равными типам WSDL и значениям равными именам классов PHP.Опция
typemapявляется массивом сопоставления типов. Массив с ключамиtype_name,type_ns(URI пространства имен),from_xml(callback-функция, принимающая один строковый параметр) иto_xml(callback-функция, принимающая один объект в качестве параметр).Опция
cache_wsdlзадается одной из констант:WSDL_CACHE_NONE,WSDL_CACHE_DISK,WSDL_CACHE_MEMORYилиWSDL_CACHE_BOTH.Также есть опция
features, которая задается одной из констант:SOAP_WAIT_ONE_WAY_CALLS,SOAP_SINGLE_ELEMENT_ARRAYSилиSOAP_USE_XSI_ARRAY_TYPE.опция
send_errorsможет быть установлена вfalseдля отправки общего сообщения об ошибке ("Internal error") вместо специального сообщения об ошибке, отправляемого в противном случае.
Примеры
Пример #1 Пример использования SoapServer::SoapServer()
<?php
$server = new SoapServer("some.wsdl");
$server = new SoapServer("some.wsdl", array('soap_version' => SOAP_1_2));
$server = new SoapServer("some.wsdl", array('actor' => "http://example.org/ts-tests/C"));
$server = new SoapServer("some.wsdl", array('encoding'=>'ISO-8859-1'));
$server = new SoapServer(null, array('uri' => "http://test-uri/"));
class MyBook {
public $title;
public $author;
}
$server = new SoapServer("books.wsdl", array('classmap' => array('book' => "MyBook")));
?>