【问题标题】:How to use Last.fm XML-RPC response with CodeIgniter?如何在 CodeIgniter 中使用 Last.fm XML-RPC 响应?
【发布时间】:2011-02-08 23:16:12
【问题描述】:

几天前我发布了一个关于如何Request user recenttracks from lastfm with codeigniter and xmlrpc的问题 该请求工作正常,但我仍然无法弄清楚如何使用响应...这是我到目前为止所做的:

xml-rpc 的问题是我得到的响应是一个字符串...

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

var_dump 说 $data["response"] 是一个字符串(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

那么我应该如何使用这个响应呢?

xml-rpc 在 CodeIgniter UserGuide 中记录得太糟糕了... :(

【问题讨论】:

    标签: php codeigniter xml-rpc last.fm


    【解决方案1】:

    如果您查看通过 CodeIgniter 的 XML-RPC 类从 Last.fm 返回的实际响应,它看起来像这样:

    &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) { ... }
    

    【讨论】:

    • 这正是我所需要的。非常感谢,你让我开心! :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多