SoapServer コンストラクタ

# SoapServer::__construct

(PHP 5, PHP 7, PHP 8)

SoapServer::__construct — SoapServer コンストラクタ

### 説明

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

このコンストラクタにより SoapServer オブジェクトを WSDL または非 WSDL モードで作成することが可能です。

### パラメータ

`wsdl`

  WSDL モードの場合、これに 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` (引数として文字列をひとつ受け取るコールバック) そして `to_xml` (引数としてオブジェクトをひとつ受け取るコールバック) です。

  `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::__construct() の例

    <?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::__construct() - SoapClient のコンストラクタ

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