PHPWebサービスと1つの関数を作成しています。PHPでWebサービスを設定したい。このWebサービスのWSDL記述を生成して、IeVisualStudioからアクセスできるようにする必要があります。入力としてドキュメント/検索文字列を受け取り、出力として同様のドキュメントを推奨します。操作が成功(1)か失敗(0)かを示す最初の要素resultCode(int)を含む配列を返します。ただし、2番目の要素は、何が問題だったかをユーザーに通知するエラーメッセージ(文字列)か、一致するさまざまな記事のサブ要素を持つ配列のような複雑な戻り型、つまりarray(array( "heading" => ")のいずれかです。記事の見出し"、" articleId "=> 12345、" text "=>"記事の本文")、array(...)、...)。そのリターン型のWSDLを生成/書き込む方法、またはNuSOAPでそれを行う方法を知る必要があります。どのようにそれをしますか?
これは、サービスのセットアップに現在使用しているコードの一部です。
$server->wsdl->addComplexType(
'returnStructBase',
'complexType',
'struct',
'all',
'',
array('resultCode' => array('name'=>'resultCode', 'type'=>'xsd:int'),
'resultData' => array('name'=>'resultData', 'type'=>'xsd:anyType')
)
);
$server->wsdl->addComplexType(
'returnStructArray',
'complexType',
'array',
'',
'SOAP-ENC:Array',
array(),
array(
array('ref' => 'SOAP-ENC:arrayType',
'wsdl:arrayType' => 'tns:returnStructBase[]'
)
),
'tns:returnStructArray'
);
$server->register("GetRecommendations", array('username'=>'xsd:string', 'password'=>'xsd:string','articleId'=>'xsd:string',
'text'=>'xsd:string', 'returnText'=>'xsd:boolean'), array('return'=>'tns:returnStructArray'), $namespace, $namespace . '#getRecommendations', 'rpc', 'encoded', ' ... ');
たぶん、PHPの緩い型付けにより、戻り型に不適切なデザインを使用し、他の何かを使用する必要がありますか?
任意の推奨事項を歓迎します。