PHP + WSDL + SOAP - 如何在屏幕上显示Web服务结果

时间:2008-10-22 03:43:59

标签: php web-services soap

我刚刚开始使用PHP,并希望获得有关如何将Web服务结果显示在数组中的一些建议。

例如,我想将货币代码打印到以下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);

1 个答案:

答案 0 :(得分:9)

基本上,这是你的$ country变量。

如果查看ConversionRate Webservice,它会根据需要定义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");

这应该有效。