2011-02-08 2 views
1

Несколько дней назад я отправил на вопросы о том, как Request user recenttracks from lastfm with codeigniter and xmlrpc Запрос отлично работает, но до сих пор я не могу понять, как использовать ответ ... Это то, что я сделал до сих пор:Как использовать ответ XML-RPC Last.fm с помощью CodeIgniter?

Моя проблема с XML-RPC является то, что ответ, который я получаю это строка ...

if(!$this->xmlrpc->send_request()) 
{ 
    $data["response"] = $this->xmlrpc->display_error(); 
} 
else { 
    $data["response"] = $this->xmlrpc->display_response(); 
} 

var_dump говорит $ данных [ "ответ"] является строкой (4293) ...

Я попытался var_dump(simplexml_load_string($response));, но я получаю ошибку:

Message: simplexml_load_string() [function.simplexml-load-string]: Entity: line 1: parser error : Start tag expected, '<' not found 

Так как же я должен использовать этот ответ?

ХМЬКРС ооочень плохо документированы в CodeIgniter UserGuide ... :(

ответ

0

Если вы посмотрите на фактический ответ вернулся из Last.fm с помощью класса XML-RPC CodeIgniter, это выглядит следующим образом:

&lt;?xml version=\"1.0\" encoding=\"utf-8\"?&gt; 
<lfm status=\"ok\"> 
<recenttracks user=\"RJ\" page=\"1\" perPage=\"10\" totalPages=\"3327\" total=\"33265\" > 
<!-- truncated for brevity --> 

Я надеюсь, что, может быть, кто-то может дать лучший ответ, поскольку это не чувствует, как оптимальное решение для меня, но это, кажется, работает:

$response = html_entity_decode(stripslashes($response)); 

$xml = simplexml_load_string($response); 

var_dump($xml); 

var_dump должен выглядеть примерно так:

object(SimpleXMLElement)#20 (2) { ... } 
+0

Это именно то, что мне нужно. Большое вам спасибо, вы сделали мой день! :) –

+0

@Matthias: Добро пожаловать. Я рад, что это сработало для вас. –

Смежные вопросы