我可以向这个web服务请求发送多个值吗


Can i send multiple values into this web service request

这是WSDLhttp://www.webservicex.net/stockquote.asmx?WSDL

我正试图获得1只以上的股票作为回应。在这个web服务中可能吗
web服务需要一个参数,即Symbol。所以我插入1个符号的代码是

$wsdl="http://www.webservicex.net/stockquote.asmx?WSDL";//wsdl
$client=新SoapClient($wsdl)
$报价=$client->GetQuote((对象)数组('symbol'=>'SPY'))
var_dump($quote)
echo$quote->GetQuoteResult。"<br />"

我得到了以下正确的响应

<StockQuotes><Stock><Symbol>SPY</Symbol><Last>133.51</Last><Date>5/27/2011</Date><Time>4:00pm</Time><Change>+0.51</Change><Open>133.37</Open><High>133.87</High><Low>132.9588</Low><Volume>120921856</Volume><MktCap>N/A</MktCap><PreviousClose>133.00</PreviousClose><PercentageChange>+0.38%</PercentageChange><AnnRange>101.13 - 137.18</AnnRange><Earns>0.00</Earns><P-E>N/A</P-E><Name>SPDR S&P 500</Name></Stock></StockQuotes><br />

例如,我如何在一个请求中获得3个股票行情的信息?例如,股票代码是SPY、^NZ50和QQQ?我尝试过不同的解决方案,例如$quote = $client->GetQuote((object)array('symbol'=>'^NZ50', 'symbol'=>'QQQ', 'symbol'=>'SPY'));我得到了和最后一个元素相同的XML——SPY股票代码信息
有了这个$quote = $client->GetQuote((object)array('symbol'=>'^NZ50','QQQ','SPY'));,我只得到了第一个股票代码NZ50。

在这个网络服务中,是否有可能获得超过1个股票行情信息的响应?我应该如何伪造输入?

这是GetQuoteSoapIn元素

<s:element name="GetQuote">
<s:complexType> <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="symbol" type="s:string"/>
</s:sequence>
</s:complexType>
</s:element>

GetQuoteHttpGetIn

<wsdl:message name="GetQuoteHttpGetIn">
<wsdl:partname="symbol" type="s:string"/>
</wsdl:message>

尝试这样做:

array('symbol'=>'^NZ50, QQQ, SPY')

根据这里的用法,如果输入^NZ50, QQQ, SPY(用逗号分隔,用空格分隔,而不是^NZ50,QQQ,SPY),它将返回一个XML响应,其中包含3的<symbol>数据。