php[world] 2019 — 25 years of PHP

SoapClient::__getTypes

(PHP 5, PHP 7)

SoapClient::__getTypesSOAP 型の一覧を返す

説明

public SoapClient::__getTypes ( void ) : array

ウェブサービスの WSDL で定義されている型の配列を返します。

注意:

この関数は WSDL モードでのみ動作します。

パラメータ

この関数にはパラメータはありません。

返り値

SOAP 型の配列を返します。すべての構造や型が含まれています。

例1 SoapClient::__getTypes() の例

<?php
$client 
= new SoapClient('http://soap.amazon.com/schemas3/AmazonWebServices.wsdl');
var_dump($client->__getTypes());
?>

上の例の出力は以下となります。

array(88) {
  [0]=>
  string(30) "ProductLine ProductLineArray[]"
  [1]=>
  string(85) "struct ProductLine {
 string Mode;
 string RelevanceRank;
 ProductInfo ProductInfo;
}"
  [2]=>
  string(105) "struct ProductInfo {
 string TotalResults;
 string TotalPages;
 string ListName;
 DetailsArray Details;
}"
...
  [85]=>
  string(32) "ShortSummary ShortSummaryArray[]"
  [86]=>
  string(121) "struct GetTransactionDetailsRequest {
 string tag;
 string devtag;
 string key;
 OrderIdArray OrderIds;
 string locale;
}"
  [87]=>
  string(75) "struct GetTransactionDetailsResponse {
 ShortSummaryArray ShortSummaries;
}"
}

参考

add a note add a note

User Contributed Notes 1 note

up
20
felipe dot cwb at hotmail dot com
4 years ago
<?php
// to see formated types

$soap = new SoapClient('http://domain.com/ws.php?WSDL');

echo
'<pre>';
echo
'<h2>Types:</h2>';
$types = $soap->__getTypes();
foreach (
$types as $type) {
   
$type = preg_replace(
        array(
'/(\w+) ([a-zA-Z0-9]+)/', '/\n /'),
        array(
'<font color="green">${1}</font> <font color="blue">${2}</font>', "\n\t"),
       
$type
   
);
    echo
$type;
    echo
"\n\n";
}
echo
'</pre>';
To Top