関数・クラス解説

SoapClient::SoapClient

version:PHP 5, PHP 7 (公式)

SoapClient コンストラクタ

公式リファレンス

書式

public SoapClient::SoapClient ( mixed $wsdl [, array $options ] )

説明

このコンストラクタは、WSDL モードもしくは 非 WSDL モードで SoapClient オブジェクトを生成します。

パラメータ

wsdl
WSDL ファイルの URI もしくは 非 WSDL モードの場合 NULL
注意: 開発中は、WSDL のキャッシュを php.ini の soap.wsdl_cache_ttl で無効にしておくとよいでしょう。 そうしないと、WSDL を変更しても soap.wsdl_cache_ttl で設定した時間が経過するまで それが反映されなくなります。
options
オプションの配列。もし WSDL モードで動作させる場合、 このパラメータはオプションです。非 WSDL モードで動作させる場合、 location と uri オプションを指定する必要があります。ここで、 location はリクエストの送り先である SOAP サーバーの URL、 uri は SOAP サービスのターゲット名前空間です。 style および use オプション は非 WSDL モードでのみ動作します。 WSDL モードでは、これらは WSDL ファイルで指定されます。 soap_version オプションは、 SOAP_1_1 あるいは SOAP_1_2 のどちらかを指定しなければいけません。それぞれ SOAP 1.1、SOAP 1.2 を表します。 省略した場合は 1.1 を使います。 HTTP 認証用として、login および password オプションが使用可能です。 プロキシサーバー経由で HTTP 接続を確立する場合は、 proxy_host, proxy_port, proxy_login および proxy_password の各オプションを使用してください。 HTTPS クライアント証明書による認証には local_cert と passphrase を使用します。認証情報は authentication オプションで指定します。認証方式は SOAP_AUTHENTICATION_BASIC (デフォルト) あるいは SOAP_AUTHENTICATION_DIGEST のいずれかとなります。 compression オプションにより、 HTTP SOAP リクエストやレスポンスの圧縮を行うことができます。 encoding オプションは内部的な文字エンコーディングを定義します。 このオプションは SOAP リクエストのエンコーディング (常に utf-8) を変更しませんが、その中の文字列を変換します。 trace オプションはリクエストのトレースを有効にします。 失敗したときにバックトレースが可能となります。 デフォルトは FALSE です。 classmap オプションは WSDL 型を PHP クラスにマッピングするために使用可能です。 このオプションには、キーとしてWSDL 型、値として PHP クラスの名前を持つ配列を指定する必要があります。 boolean のオプション trace を設定すると、 SoapClient->__getLastRequest、 SoapClient->__getLastRequestHeaders、 SoapClient->__getLastResponse および SoapClient->__getLastResponseHeaders といったメソッドが使用できるようになります。 exceptions オプションは boolean 値で、soap のエラー時に SoapFault 型の例外をスローさせるかどうかを設定します。 connection_timeout オプションは、SOAP サービスに接続する際のタイムアウト秒数を指定します。 これを使用しても、レスポンスが遅いサービスのタイムアウトを定義することはできません。 サービスのコールが完了するまでの待ち時間を制限するには、設定項目 default_socket_timeout を使用します。 typemap オプションは、型マッピングの配列です。 この配列のキーは type_name、 type_ns (名前空間 URI)、from_xml (引数として文字列をひとつ受け取るコールバック) そして to_xml (引数としてオブジェクトをひとつ受け取るコールバック) です。 cache_wsdl オプションは WSDL_CACHE_NONE、 WSDL_CACHE_DISK、 WSDL_CACHE_MEMORY あるいは WSDL_CACHE_BOTH のいずれかです。 user_agent オプションは、 User-Agent ヘッダで使用する文字列を指定します。 stream_context オプションは、 context 用のリソースです。 features オプションは SOAP_SINGLE_ELEMENT_ARRAYS、 SOAP_USE_XSI_ARRAY_TYPE、 SOAP_WAIT_ONE_WAY_CALLS のビットマスクです。 keep_alive オプションは boolean 値で、 Connection: Keep-Alive ヘッダーと Connection: close ヘッダーのどちらを送信するかを決めます。 ssl_method オプションは SOAP_SSL_METHOD_TLS か SOAP_SSL_METHOD_SSLv2、 SOAP_SSL_METHOD_SSLv3、あるいは SOAP_SSL_METHOD_SSLv23 のいずれかです。

エラー

SoapClient::SoapClient() は、 非 WSDL モードで location や uri オプションを指定しなかったときに E_ERROR エラーとなります。 wsdl URI が読み込めなかった場合に SoapFault をスローします。

サンプル

例1 SoapClient::SoapClient() の例

$client = new SoapClient("some.wsdl"); $client = new SoapClient("some.wsdl", array('soap_version'   => SOAP_1_2)); $client = new SoapClient("some.wsdl", array('login'          => "some_name",                                             'password'       => "some_password")); $client = new SoapClient("some.wsdl", array('proxy_host'     => "localhost",                                             'proxy_port'     => 8080)); $client = new SoapClient("some.wsdl", array('proxy_host'     => "localhost",                                             'proxy_port'     => 8080,                                             'proxy_login'    => "some_name",                                             'proxy_password' => "some_password")); $client = new SoapClient("some.wsdl", array('local_cert'     => "cert_key.pem")); $client = new SoapClient(null, array('location' => "http://localhost/soap.php",                                      'uri'      => "http://test-uri/")); $client = new SoapClient(null, array('location' => "http://localhost/soap.php",                                      'uri'      => "http://test-uri/",                                      'style'    => SOAP_DOCUMENT,                                      'use'      => SOAP_LITERAL)); $client = new SoapClient("some.wsdl",    array('compression' => SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_GZIP)); $client = new SoapClient("some.wsdl", array('encoding'=>'ISO-8859-1')); class MyBook {     public $title;     public $author; } $client = new SoapClient("books.wsdl", array('classmap' => array('book' => "MyBook")));

ワード検索


※入力キーワードが、関数名・説明文・タグに含まれるものを検索

関数名アルファベット別

A B C D E F G H I J
K L M N O P Q R S T
U V W X Y Z _

最終更新一覧

stristr
 大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却

stripslashes
 バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く

stripos
 大文字小文字を区別せずに文字列が最初に現れる位置を取得する

stripcslashes
 addcslashes() でクォートされた文字列をアンクォートする

strip_tags
 文字列から HTML と PHP のタグを除去して返却

strcspn
 指定した文字が最初に現れる位置を調べる

strcoll
 ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する

strcmp
 2つの文字列を比較し同じか(あるいは大小)を判定する

strchr
 strstr() のエイリアス

strcasecmp
 2つの文字列を比較(大文字小文字を区別せず同じとみなす)

カテゴリー一覧

PHP の振る舞いの変更
音声フォーマットの操作
認証サービス
コマンドライン関連
圧縮およびアーカイブ
暗号
データベース関連
日付および時刻関連
ファイルシステム
自然言語および文字エンコーディング
画像処理および作成
メール関連
数学
テキスト以外の MIME 型
プロセス制御
その他の基本モジュール
その他のサービス
検索エンジン用の拡張モジュール
サーバー固有のモジュール
セッション関連
テキスト処理
変数・データ型関連
ウェブサービス
Windows 用のモジュール
XML 操作
GUI用の拡張モジュール