我对PHP比较陌生。我试图从一个宁静的Web服务显示XML响应。以下是我的代码段:
<?php
if(isset($_GET['submit'])){
$name = $_GET['company'];
$url = "http://dev.markitondemand.com/MODApis/Api/v2/Lookup/xml?input=$name";
$client = curl_init($url);
curl_setopt($client, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($client);
$xml = new SimpleXMLElement($response);
curl_close($client);
foreach($xml->LookupResultList as $oEntry){
echo $oEntry->LookupResultList->LookupResult[i]->symbol . "\n";
}
}
?>
我在控制台中收到以下错误:
Invalid request (Unexpected EOF)
$ xml也是空白。
答案 0 :(得分:1)
在foreach
循环中,您必须直接使用<LookupResult>
标记,并且在循环内部您不必调用完整的三个,而只需调用<LookupResult>
子元素(ren) :
foreach( $xml->LookupResult as $oEntry )
{
echo $oEntry->Symbol . PHP_EOL;
}
另外,我不知道你对“$ xml是空白的”是什么意思;顺便说一句,要从SimpleXML
打印出XML,您可以使用以下语法:
echo $xml->asXML();