【问题标题】:Ebay api GetSellerList, Parsing response XMLEbay api GetSellerList,解析响应 XML
【发布时间】:2012-07-29 18:35:47
【问题描述】:

我正在使用 ebay 交易 API 获取当前上市的卖家股票。我正在使用调用 GetSellerList。我无法解析 xml,然后我将其插入到那里的网站商店。

这是 xml 请求。

<GetSellerListRequest xmlns='urn:ebay:apis:eBLBaseComponents'>

<UserID>".$user_id."</UserID>

<DetailLevel>ReturnAll</DetailLevel>
<ErrorLanguage>RFC 3066</ErrorLanguage>
<WarningLevel>Low</WarningLevel>
<Version>".$compat_level."</Version>

<RequesterCredentials>
    <eBayAuthToken>".$auth_token."</eBayAuthToken>
</RequesterCredentials>

<StartTimeFrom>2012-06-12T23:35:27.000Z</StartTimeFrom>
<StartTimeTo>2012-08-30T23:35:27.000Z</StartTimeTo>

<Pagination>
    <EntriesPerPage>200</EntriesPerPage>
</Pagination>

<OutputSelector>ItemArray.Item.Title</OutputSelector>
<OutputSelector>ItemArray.Item.Description</OutputSelector>
<OutputSelector>ItemArray.Item.BuyItNowPrice</OutputSelector>
<OutputSelector>ItemArray.Item.Quantity</OutputSelector>

</GetSellerListRequest>

我不是最好的 php,我还在学习,所以我查看了 w3schools 和 php 文档,但一无所获。我一直在使用这个(来自 ebay tuts)来尝试通过使用 getElementsByTagName 来获取 xml 标签的值。

$dom = new DOMDocument();
$dom->loadXML($response);

$titles = $dom->getElementsByTagName('Title')->length > 0 ? $dom->getElementsByTagName('Title')->item(0)->nodeValue : ''; 

现在我希望我能够用它创建一个数组,然后使用 foreach 将它们插入到数据库中,但是当我使用它时,它只会获取第一个“标题”标签的值

我确信有一种方法可以创建一个包含所有“Title”值的数组。 感谢所有帮助。

【问题讨论】:

    标签: php xml dom ebay-api


    【解决方案1】:

    如果您发布响应 XML(只是相关部分)而不是请求,这将更容易回答。

    您拥有的代码只会抓取第一项 - 特别是这部分:

    $dom->getElementsByTagName('Title')->item(0)->nodeValue
    

    相反,您需要遍历所有Title 元素并提取它们的nodeValue。这是一个起点:

    $dom = new DOMDocument();
    $dom->loadXML($response);
    $title_nodes = $dom->getElementsByTagName('Title');
    
    $titles = array();
    
    foreach ($title_nodes as $node) {
        $titles[] = $node->nodeValue;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多