SoapClient::__construct
(PHP 5, PHP 7, PHP 8)
SoapClient::__construct — SoapClient のコンストラクタ
説明
SOAP サービスに接続するための SoapClient オブジェクトを生成します。
パラメータ
wsdl
-
サービスを記述した WSDL ファイルまたは URI。 これは自動的にクライアントを設定します。 指定されない場合、クライアントは 非WSDL モードで動作します。
注意:
デフォルトでは、 WSDL ファイルはパフォーマンスのためキャッシュされます。 このキャッシュ機能を無効にしたり、設定を変更する場合は、 SOAP 設定オプション や
cache_wsdl
オプション を参照ください。 options
-
SOAP クライアントに指定する追加オプションを連想配列で指定します。
wsdl
が指定された場合、 このパラメータはオプションです。 指定されない場合、location
とurl
オプションを指定する必要があります。-
location
string -
リクエストを送信する SOAP サーバーのURL
wsdl
パラメータが指定されない場合、 必須です。wsdl
とlocation
が指定された場合、location
オプションは WSDL ファイルで指定されたあらゆる location を上書きします。 -
uri
string -
SOAP サービスのターゲット名前空間です。
wsdl
が指定されていない場合、このパラメータは必須です。 そうでない場合、この値は無視されます。 -
style
int -
SOAP_RPC
とSOAP_DOCUMENT
を使うと、 このクライアントで使うバインディングスタイルを指定します。SOAP_RPC
は RPCスタイルのバインディングを指定します。 この場合の SOAP リクエストのボディには、 関数コールの標準エンコーディングが含まれます。SOAP_DOCUMENT
は ドキュメントスタイルのバインディングを指定します。 この場合の SOAP リクエストのボディには、 サービス定義を記した XML ドキュメントが含まれます。wsdl
が指定された場合、 このオプションは無視され、 スタイルは WDSL ファイルから読み込まれます。このオプションと
wsdl
パラメータ を両方指定しなかった場合、 RPCスタイルを使います。 -
use
int -
SOAP_ENCODED
やSOAP_LITERAL
を使うと、 このクライアントで使うエンコーディングスタイルを指定します。SOAP_ENCODED
は、 SOAP 仕様で定義された型を使い、エンコーディングを指定します。SOAP_LITERAL
は、 サービスで定義されたスキームを使い、 エンコーディングを指定します。wsdl
が指定された場合、 このオプションは無視され、 エンコーディングは WDSL ファイルから読み込まれます。このオプションと
wsdl
パラメータ を両方指定しなかった場合、 "encoded" スタイルを使います。 -
soap_version
int -
使用する SOAP プロトコルのバージョンを指定します: SOAP 1.1 の場合は
SOAP_1_1
を指定します。 SOAP 1.2 の場合はSOAP_1_2
を指定します。省略した場合は、SOAP 1.1 を使います。
-
authentication
int -
HTTP 認証をリクエスト時に使う際の、 認証方法を指定します。
SOAP_AUTHENTICATION_BASIC
とSOAP_AUTHENTICATION_DIGEST
が指定できます。省略された場合、 かつ
login
オプションが指定されると Basic 認証を使います。 -
login
string -
Basic 認証と、Digest 認証で使うユーザー名を指定します。
-
password
string -
Basic 認証と、Digest 認証で使うパスワードを指定します。
HTTPS クライアント認証で使う
passphrase
と混同しないようにして下さい。 -
local_cert
string -
HTTPS 認証で使うクライアント証明書のパス。 証明書ファイルは、 証明書と秘密鍵が両方入った状態で、 PEMエンコードされている必要があります。
このファイルには、発行者のチェインも含めることができます。 それらを含める場合、クライアント証明書の後に置く必要があります。
stream_context
でも設定できます。 この場合、秘密鍵のファイルは別に指定できます。 -
passphrase
string -
local_cert
オプションで指定したクライアント証明書のための パスフレーズ。Basic 認証や Digest 認証で使う
password
と混同しないようにして下さい。stream_context
でも設定できます。 -
proxy_host
string -
HTTPリクエスト時に使う、 プロキシサーバーとして用いるホスト名を指定します。
proxy_port
オプションも指定する必要があります。 -
proxy_port
int -
proxy_host
で指定したプロキシサーバーに接続する際に使うポート番号。 -
proxy_login
string -
proxy_host
で指定したプロキシサーバーに接続する際に、 Basic 認証で用いるオプションのユーザー名 -
proxy_password
string -
proxy_host
で指定したプロキシサーバーに接続する際に、 Basic 認証で用いるオプションのパスワード -
compression
int -
SOAP リクエストとレスポンスの圧縮を有効にします。
この値は、3つの値を ビット演算のOR で指定します: オプションの
SOAP_COMPRESSION_ACCEPT
は、"Accept-Encoding" ヘッダを指定します。SOAP_COMPRESSION_GZIP
やSOAP_COMPRESSION_DEFLATE
は、使用する圧縮アルゴリズムと、 リクエストで使う圧縮レベルを 1 から 9 の間の数値で指定します。 たとえば、双方向の gzip 圧縮を最高の圧縮レベルで行う場合は、SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_GZIP | 9
を指定します。 -
encoding
string -
内部的な文字エンコーディングを指定します。 リクエストはここで指定されたエンコーディングから、 常に UTF-8 に変換して送られ、 レスポンスはこのエンコーディングに変換されます。
-
trace
bool -
リクエストやレスポンスのキャプチャを行います。 キャプチャした情報は SoapClient::__getLastRequest(), SoapClient::__getLastRequestHeaders(), SoapClient::__getLastResponse(), SoapClient::__getLastResponseHeaders(). を使ってアクセスできます。
省略した場合のデフォルト値は
false
です。 -
classmap
array -
WSDL 型を PHP クラスにマッピングするために使用可能です。 このオプションには、キーとしてWSDL 型、 値として PHP クラスの名前を持つ配列を指定する必要があります。 型の名前は、 要素の(タグ)名前と一致させる必要はないことに注意して下さい。
指定するクラス名は、常に 名前空間 で完全修飾されているべきですし、
\
で始まってはいけません。 正しい名前は、 ::class を使えば生成できます。クラスのインスタンスを生成する場合、 コンストラクタはコールされず、 個別のプロパティに対して マジックメソッド __set() と __get() が コールされる点にも注意して下さい。
-
typemap
array -
ユーザー定義のコールバック関数を使って、 型マッピングを定義します。 型マッピングは配列で定義され、 キーは
type_name
(XML 要素型を指定した文字列)、type_ns
(名前空間URI を指定した文字列)、from_xml
(文字列を受け取り、 オブジェクトを返す callable)、to_xml
(オブジェクトをひとつ受け取り、 文字列を返す callable) です。 -
exceptions
bool -
エラーが起きた際に、 SoapFault をスローするかどうかを指定します。
デフォルトは
true
です。
-