2010-11-21 12 views
0

konnte ich bisher diesen Code erhalten:XML-Ausgabe von Yahoo BOSS API mit PHP

<?php 
//Gather data and prepare query 
$thequery = urlencode($_GET['s']); 
$yhost = 'http://boss.yahooapis.com'; 
$apikey = 'xxxxxxxxxxxxxxx'; 
$url = $yhost.'/ysearch/news/v1/'.$thequery.'?appid='.$apikey.'&format=xml'; 
//Get the results 
$ch = curl_init($url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_HEADER, 0); 
$data = curl_exec($ch); 
curl_close($ch); 
$results = new SimpleXmlElement($data, LIBXML_NOCDATA); 
//echo the results 
foreach ($results->resultset_news->result as $theresult) { 
echo '<a href="'.$theresult->clickurl.'">'.$theresult->title.'</a><br/>'; 
echo $theresult->abstract.'<br/>'; 
echo '<small><i>'.$theresult->dispurl.'</i></small><br/>'; 
echo '<br/><br/>'; 
} 

Wie genau tun i Ausgang eigentlichen XML statt HTML?

+0

Ein Blick auf das Problem, wie zum Beispiel '(string) $ theresult-> clickurl' anstatt nur' $ theresult-> clickurl', und bitte geben Sie weitere Details zu Ihrer gewünschten Ausgabe an – ajreal

+0

Ich versuche diese rss zurückzugeben Feeds zu meiner iPhone App, also muss ich dies als XML anstatt HTML für eine Webseite ausgeben. – benhowdle89

+0

Die $ Daten sind bereits im XML-Format, also möchten Sie einige Details zu $ ​​data ändern? – ajreal

Antwort

1

dieses Versuchte:

echo $results->asXML(); 

?

+0

brilliant. Ich wollte die XML-Tags für jedes Element ändern. dh. Ändere "Abstrakt", um "Beschreibung" usw. genannt zu werden? – benhowdle89