Конструктор SoapServer

# SoapServer::__construct

(PHP 5, PHP 7, PHP 8)

SoapServer::__construct — Конструктор SoapServer

### Описание

public function SoapServer::__construct(?string `$wsdl`, array `$options` = [])

Данный конструктор позволяет создавать объекты 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")));

    ?>

### Смотрите также

- SoapClient::SoapClient()

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open