私は PHP を使用していますが、SOAP と PHP を使用したことはありません。
Soap サーバー .NET Web サービスを呼び出して情報を取得 する Soap PHP クライアントを構築する必要があります。
私 は 現在, オランダ の ヘルス ケア システム の医師 の 情報 を 取得 する 作業 を 行っ て いる . オランダ の ヘルス ケア システムに 登録 さ れ て いる すべて の 医師 は , 彼 の ユニーク で ユニークな BIG ID - 11 桁 の 固有 番号)を通してSOAP ウェブから 彼 の 情報 を 取得 でき ます . - WSDL を使用したサービス。
したがって、SOAPサーバーを呼び出すとき:(サーバーのリンクは以下にあります)
このテスト Web サイト (soapclinet.com など) に
私のXML 応答は正しく、以下の XML とまったく同じように見えます。この XML は、php で取得したい医師の情報を括弧内に示しています。
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<ListHcpApprox3Result xmlns="http://services.cibg.nl/ExternalUser">
<ListHcpApprox>
<ListHcpApprox3>
<HcpNumber>200822</HcpNumber>
<BirthSurname> [Surname of the Doctor]</BirthSurname>
<MailingName> [Mailing name of the doctor] </MailingName>
<Initial> [Initials of the doctor] </Initial>
<Gender> [Gender of the doctor] </Gender>
<ArticleRegistration>
<ArticleRegistrationExtApp>
<ArticleRegistrationNumber> [unique BIG ID] </ArticleRegistrationNumber>
<StartDate>1998-12-10T00:00:00</StartDate>
<EndDate xsi:nil="true"/>
<TypeOfSpecialismId>15</TypeOfSpecialismId>
</SpecialismExtApp>
</Specialism>
<Mention/>
<JudgmentProvision/>
<Limitation/>
</ListHcpApprox3>
</ListHcpApprox>
</ListHcpApprox3Result>
</soap:Body>
</soap:Envelope>
まったく同じ SOAP 呼び出しを行う PHP Web ページを作成する必要があります。
wsdl ファイルのアドレスは次のとおりです。
webservices.cibg.nl/Ribiz/OpenbaarV2.asmx?wsdl.asmx?wsdl
SOAP サーバーのアドレスは次のとおりです: http://webservices-acc.cibg.nl/Ribiz/OpenbaarV2.asmx
SOAP アクションは次のとおりです: http://services.cibg.nl/ExternalUser/ListHcpApprox3
私が送信した SOAP メッセージは次のとおりです。
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<listHcpApproxRequest xmlns="http://services.cibg.nl/ExternalUser">
<WebSite>Ribiz</WebSite>
<RegistrationNumber> [BIG ID number of the doctor] </RegistrationNumber>
</listHcpApproxRequest>
</soap:Body>
</soap:Envelope>
(カッコ内はSOAPサーバーで送信する医師のBIG ID番号です)
上記の SOAP アクションを PHP コードに記述し、応答として取得した XML の変数を PHP に格納するにはどうすればよいですか?
PHPコードに保存する必要があるXML応答の変数は次のとおりです...
<HcpNumber>200822</HcpNumber>
<BirthSurname> [Surname of the Doctor]</BirthSurname>
<MailingName> [Mailing name of the doctor] </MailingName>
<Initial> [Initials of the doctor] </Initial>
<Gender> [Gender of the doctor] </Gender>
Update1: これは var_dump の出力です。xxxxxxx は、php 変数に保存したい値です!
object(stdClass)[2]
public 'ListHcpApprox' =>
object(stdClass)[3]
public 'ListHcpApprox3' =>
object(stdClass)[4]
public 'HcpNumber' => string 'xxxxxxxxx' (length=6)
public 'BirthSurname' => string 'xxxxxxxxxxx' (length=9)
public 'MailingName' => string 'xxxxxxxxxxxxxxxxxx' (length=18)
public 'Initial' => string 'xxxxxxxxxxxx' (length=8)
public 'Gender' => string 'x' (length=1)
public 'ArticleRegistration' =>
object(stdClass)[5]
...
public 'Specialism' =>
object(stdClass)[7]
...
public 'Mention' =>
object(stdClass)[9]
...
public 'JudgmentProvision' =>
object(stdClass)[10]
...
public 'Limitation' =>
object(stdClass)[11]
...