PHP + WSDL + SOAP — как отобразить результат веб-сервиса на экране

Я только начинаю работать с PHP и хотел бы получить совет о том, как получить результат веб-сервиса для отображения в массиве.

Например, я хотел бы напечатать коды валют в массив из следующего WSDL.

$wsdl="http://www.webservicex.com/CurrencyConvertor.asmx?WSDL

Это то, что у меня есть до сих пор, но на самом деле ничего не происходит:

$proxyhost="proxy.cpit.ac.nz";  
$proxyport = 8080;  

$wsdl="http://www.webservicex.com/CurrencyConvertor.asmx?WSDL";

$client = new SoapClient($wsdl,
  array('proxy_host' => "$proxyhost",'proxy_port' => 8080, 'trace' => 1));

$country=array();
$result = $client->ConversionRate($country);
print_r($result);

person user30218    schedule 22.10.2008    source источник


Ответы (1)


По сути, это ваша переменная $country.

Если вы посмотрите на веб-сервис ConversionRate, он определяет FromCurrency и ToCurrency по мере необходимости.

  <s:element name="ConversionRate"> 
    <s:complexType> 
      <s:sequence> 
        <s:element minOccurs="1" maxOccurs="1" name="FromCurrency" type="tns:Currency" /> 
        <s:element minOccurs="1" maxOccurs="1" name="ToCurrency" type="tns:Currency" /> 
      </s:sequence> 
    </s:complexType> 
  </s:element> 

Вам нужно будет обновить $country следующим образом:

$country = array( "FromCurrency" => "AFA",
                  "ToCurrency" => "AUD");

Это должно сработать.

person Nick Stinemates    schedule 22.10.2008